Como hacer que un DataGridView se auto actualice (Auto Saving)

Auto Saving:

A veces necesitamos que la DataGridView se auto actualice a medida que agregamos, eliminamos o modificamos los registros. Esto se hace por medio de las propiedades y eventos que la misma tiene con respecto a si permite que el usuario modifique, elimine o agregue registros (AllowUserToAddRows y AllowUserToDeleteRows).

Un ejemplo:

Para comprender mejor a continuación se detalla el siguiente ejemplo de la carga de una DataGridView con un DataTable y un evento para actualizar los datos modificados en la grilla.

Paso 1: Carga de la grilla e inicialización de los objetos:


//Crear la query para el DataTable
string query = "SELECT * FROM "+ txtDbOwner.Text +"."+ cboTablas.Text;
 //Crear un OleDbDataAdapter para ejecutar la query
dAdapter = new OleDbDataAdapter(query, connection);
 //crear un command builder
OleDbCommandBuilder cBuilder = new OleDbCommandBuilder(dAdapter);
 //crear un DataTable para almacenar los resultados
dTable = new DataTable();
 //llenar la DataTable
dAdapter.Fill(dTable);

 //GRID
//Setear el BindingSource DataSource
bindingSource.DataSource = dTable;
 //Setear el DataGridView DataSource
dtgvDataTable.DataSource = bindingSource;

Paso 2: El evento de actualizacion
Simplemente hay que actualizar el DataAdapter y refrescará los datos modificados en la grilla como se muestra a continuación

dAdapter.Update(dTable);

Como se muestra el procedimiento es simple. A medida que se cambian o actualizan los datos de la grilla se puede
codificar el evento de actualizacion en un evento de la grilla o en un evento del boton. Segun como sea mas conveniente.
Feliz Programacion .NET

Leave a comment