@@ -25,19 +25,41 @@ public FBiblioteca()
2525 InitializeComponent ( ) ;
2626 }
2727
28- private void btMostrarLibro_Click ( object sender , EventArgs e )
28+ private void RefrescarDataGridView ( )
2929 {
3030 ConexionBaseDeDatos conexionBaseDeDatos = new ConexionBaseDeDatos ( ) ;
3131 DataSet datos = conexionBaseDeDatos . ObtenerDatos ( false ) ; // falso significa no muestres al elemento mas reciente de primero en el datagridview
3232 dgvLibro . DataSource = datos . Tables [ "Libros" ] ; //refresca el datagridview
33+ conexionBaseDeDatos = null ;
34+ }
35+
36+
37+ private void btMostrarLibro_Click ( object sender , EventArgs e )
38+ {
39+ RefrescarDataGridView ( ) ;
40+
3341 }
3442
35- private void btEliminarLibro_Click ( object sender , EventArgs e )
43+ private void btEliminarLibro_Click ( object sender , EventArgs e )
3644 {
45+
46+ if ( dgvLibro . DataSource == null )
47+ {
48+ RefrescarDataGridView ( ) ;
49+ MessageBox . Show ( "Seleccione los libros que desea eliminar." + Environment . NewLine +
50+ "Para seleccionar un libro, vaya a la fila que tiene el libro que quiera eliminar, " +
51+ "mire a la celda vacia a la izquierda de la fila, y haga click en esa celda vacia, lo que cambiara el color de la fila, " +
52+ "seleccionando el libro." ) ;
53+ return ;
54+ }
55+
3756 if ( dgvLibro . SelectedRows . Count == 0 )
3857 {
39- MessageBox . Show ( "Seleccione los libros que desea eliminar. Para seleccionar un libro, vaya a la fila que tiene el libro que quiera eliminar, " +
40- "mire a la celda vacia a la izquierda de la fila, y haga click en esa celda vacia." ) ;
58+ MessageBox . Show ( "Seleccione los libros que desea eliminar." + Environment . NewLine +
59+ "Para seleccionar un libro, vaya a la fila que tiene el libro que quiera eliminar, " +
60+ "mire a la celda vacia a la izquierda de la fila, y haga click en esa celda vacia, lo que cambiara el color de la fila, " +
61+ "seleccionando el libro." ) ;
62+
4163 return ;
4264 }
4365
@@ -60,21 +82,31 @@ private void btEliminarLibro_Click(object sender, EventArgs e)
6082 string ids = string . Join ( "," , idsEliminar ) ;
6183 string query = $ "DELETE FROM Libros WHERE id IN ({ ids } )";
6284
63- ConexionBaseDeDatos conexionBaseDeDatos = new ConexionBaseDeDatos ( ) ;
64- conexionBaseDeDatos . DeleteDatos ( query ) ;
65-
66- DataSet datos = conexionBaseDeDatos . ObtenerDatos ( false ) ;
67- dgvLibro . DataSource = datos . Tables [ "Libros" ] ; //refresca el datagridview
85+ ConexionBaseDeDatos conexionBaseDeDatosInterno = new ConexionBaseDeDatos ( ) ;
86+ conexionBaseDeDatosInterno . DeleteDatos ( query ) ;
6887
88+ RefrescarDataGridView ( ) ;
6989
7090 }
7191
7292 private void btActualizar_Click ( object sender , EventArgs e )
7393 {
94+
95+ if ( dgvLibro . DataSource == null ) {
96+ RefrescarDataGridView ( ) ;
97+ MessageBox . Show ( "Seleccione un solo libro para actualizar. " + Environment . NewLine +
98+ "Para seleccionar un libro, vaya a la fila que tiene el libro que quiera actualizar, " +
99+ "mire a la celda vacia a la izquierda de la fila, y haga click en esa celda vacia, lo que cambiara el color de la fila, " +
100+ "seleccionando el libro." ) ;
101+ return ;
102+ }
103+
74104 if ( dgvLibro . SelectedRows . Count != 1 )
75105 {
76- MessageBox . Show ( "Seleccione un solo libro para actualizar. Para seleccionar un libro, vaya a la fila que tiene el libro que quiera actualizar, " +
77- "mire a la celda vacia a la izquierda de la fila, y haga click en esa celda vacia." ) ;
106+ MessageBox . Show ( "Seleccione un solo libro para actualizar. " + Environment . NewLine +
107+ "Para seleccionar un libro, vaya a la fila que tiene el libro que quiera actualizar, " +
108+ "mire a la celda vacia a la izquierda de la fila, y haga click en esa celda vacia, lo que cambiara el color de la fila, " +
109+ "seleccionando el libro." ) ;
78110 return ;
79111 }
80112
@@ -95,8 +127,7 @@ private void btActualizar_Click(object sender, EventArgs e)
95127 ConexionBaseDeDatos conexionBaseDeDatos = new ConexionBaseDeDatos ( ) ;
96128 conexionBaseDeDatos . UpdateDatos ( nuevaCantidad , id ) ;
97129
98- DataSet datos = conexionBaseDeDatos . ObtenerDatos ( false ) ;
99- dgvLibro . DataSource = datos . Tables [ "Libros" ] ; //refresca el datagridview
130+ RefrescarDataGridView ( ) ;
100131
101132 }
102133 else
@@ -125,7 +156,7 @@ private void btAgregarLibro_Click(object sender, EventArgs e)
125156 string cantidadStr = Microsoft . VisualBasic . Interaction . InputBox ( "Ingrese la cantidad disponible:" , "Agregar libro" ) ;
126157 if ( ! int . TryParse ( cantidadStr , out int cantidadDisponible ) )
127158 {
128- MessageBox . Show ( "Debe ingresar una cantidad válida ." ) ;
159+ MessageBox . Show ( "Debe ingresar una cantidad numerica como 5, 9, etc ." ) ;
129160 return ;
130161 }
131162
@@ -138,14 +169,5 @@ private void btAgregarLibro_Click(object sender, EventArgs e)
138169
139170 }
140171
141- private void FBiblioteca_Load ( object sender , EventArgs e )
142- {
143- // Aquí podrías cargar la lista de libros al iniciar la aplicación
144- }
145-
146- private void dgvLibro_CellContentClick ( object sender , DataGridViewCellEventArgs e )
147- {
148- // Evento del DataGridView, si necesitas alguna funcionalidad aquí
149- }
150172 }
151173}
0 commit comments