Este tema aún no ha recibido ninguna valoración - Valorar este tema

DataGridView.CurrentCellDirtyStateChanged (Evento)

Se produce cuando el estado de una celda cambia en relación con un cambio de su contenido.

Espacio de nombres: System.Windows.Forms
Ensamblado: System.Windows.Forms (en system.windows.forms.dll)

public event EventHandler CurrentCellDirtyStateChanged
/** @event */
public void add_CurrentCellDirtyStateChanged (EventHandler value)

/** @event */
public void remove_CurrentCellDirtyStateChanged (EventHandler value)

En JScript, se pueden controlar los eventos que define una clase, pero no se pueden definir unos propios.
No aplicable.

Una celda se marca como modificada si su contenido ha cambiado y aún no se ha guardado el cambio.

Este evento suele producirse cuando se ha editado una celda y no se ha confirmado el cambio en la caché de datos, o cuando se cancela una operación de edición.

Para obtener más información sobre el control de eventos, vea Utilizar eventos.

En el ejemplo de código siguiente se muestra cómo controlar el evento CurrentCellDirtyStateChanged. En este ejemplo, el controlador de eventos llama al método CommitEdit para provocar el evento CellValueChanged y determinar el valor actual de un objeto DataGridViewCheckBoxCell. Este ejemplo de código forma parte de un ejemplo más extenso proporcionado en Cómo: Deshabilitar botones en una columna de botones del control DataGridView de formularios Windows Forms.

// This event handler manually raises the CellValueChanged event
// by calling the CommitEdit method.
void dataGridView1_CurrentCellDirtyStateChanged(object sender,
    EventArgs e)
{
    if (dataGridView1.IsCurrentCellDirty)
    {
        dataGridView1.CommitEdit(DataGridViewDataErrorContexts.Commit);
    }
}

// If a check box cell is clicked, this event handler disables  
// or enables the button in the same row as the clicked cell.
public void dataGridView1_CellValueChanged(object sender,
    DataGridViewCellEventArgs e)
{
    if (dataGridView1.Columns[e.ColumnIndex].Name == "CheckBoxes")
    {
        DataGridViewDisableButtonCell buttonCell =
            (DataGridViewDisableButtonCell)dataGridView1.
            Rows[e.RowIndex].Cells["Buttons"];

        DataGridViewCheckBoxCell checkCell =
            (DataGridViewCheckBoxCell)dataGridView1.
            Rows[e.RowIndex].Cells["CheckBoxes"];
        buttonCell.Enabled = !(Boolean)checkCell.Value;

        dataGridView1.Invalidate();
    }
}

Windows 98, Windows 2000 Service Pack 4, Windows Millennium, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter

Microsoft .NET Framework 3.0 es compatible con Windows Vista, Microsoft Windows XP SP2 y Windows Server 2003 SP1.

.NET Framework

Compatible con: 3.0, 2.0
¿Le ha resultado útil?
(Caracteres restantes: 1500)