Cómo: Llevar a cabo una acción personalizada en función de los cambios que se realicen en una celda de un control DataGridView de formularios Windows Forms
El control DataGridView tiene varios eventos que puede utilizar para detectar los cambios en el estado de celdas DataGridView. Dos de los más utilizados son los eventos CellValueChanged y CellStateChanged.
Para detectar cambios en los valores de celdas de DataGridView
Escriba un controlador para el evento CellValueChanged.
Private Sub dataGridView1_CellValueChanged(ByVal sender As Object, _ ByVal e As DataGridViewCellEventArgs) _ Handles dataGridView1.CellValueChanged Dim msg As String = String.Format( _ "Cell at row {0}, column {1} value changed", _ e.RowIndex, e.ColumnIndex) MessageBox.Show(msg, "Cell Value Changed") End Sub
private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e) { string msg = String.Format( "Cell at row {0}, column {1} value changed", e.RowIndex, e.ColumnIndex); MessageBox.Show(msg, "Cell Value Changed"); }
Para detectar cambios en los estados de celdas de DataGridView
Escriba un controlador para el evento CellStateChanged.
Private Sub dataGridView1_CellStateChanged(ByVal sender As Object, _ ByVal e As DataGridViewCellStateChangedEventArgs) _ Handles dataGridView1.CellStateChanged Dim state As DataGridViewElementStates = e.StateChanged Dim msg As String = String.Format( _ "Row {0}, Column {1}, {2}", _ e.Cell.RowIndex, e.Cell.ColumnIndex, e.StateChanged) MessageBox.Show(msg, "Cell State Changed") End Sub
private void dataGridView1_CellStateChanged(object sender, DataGridViewCellStateChangedEventArgs e) { DataGridViewElementStates state = e.StateChanged; string msg = String.Format("Row {0}, Column {1}, {2}", e.Cell.RowIndex, e.Cell.ColumnIndex, e.StateChanged); MessageBox.Show(msg, "Cell State Changed"); }
Compilar el código
Para este ejemplo se necesita:
Un control DataGridView denominado dataGridView1. En C#, los controladores de eventos se deben conectar a los eventos correspondientes.
Referencias a los ensamblados System y System.Windows.Forms.
Vea también
Tareas
Tutorial: Validar datos en el control DataGridView de formularios Windows Forms
Referencia
Otros recursos
Programar con celdas, filas y columnas en el control DataGridView de formularios Windows Forms