Evaluar y enviar comentarios
Contraer todo/Expandir todo Contraer todo
Esta página es específica de
Microsoft Visual Studio 2008/.NET Framework 3.5

Hay además otras versiones disponibles para:
Biblioteca de clases de .NET Framework
DataGridViewCheckBoxCell (Clase)

Actualización: noviembre 2007

Muestra una interfaz de usuario con apariencia de casilla para su uso en un control DataGridView.

Espacio de nombres:  System.Windows.Forms
Ensamblado:  System.Windows.Forms (en System.Windows.Forms.dll)
Visual Basic (Declaración)
Public Class DataGridViewCheckBoxCell _
    Inherits DataGridViewCell _
    Implements IDataGridViewEditingCell
Visual Basic (Uso)
Dim instance As DataGridViewCheckBoxCell
C#
public class DataGridViewCheckBoxCell : DataGridViewCell, 
    IDataGridViewEditingCell
Visual C++
public ref class DataGridViewCheckBoxCell : public DataGridViewCell, 
    IDataGridViewEditingCell
J#
public class DataGridViewCheckBoxCell extends DataGridViewCell implements IDataGridViewEditingCell
JScript
public class DataGridViewCheckBoxCell extends DataGridViewCell implements IDataGridViewEditingCell

La clase DataGridViewCheckBoxCell es un tipo especializado de DataGridViewCell que se utiliza para mostrar información binaria o ternaria presentada a través de una interfaz de usuario de tipo casilla. En el modo binario predeterminado, las celdas pueden contener valores de true o false. En modo ternario, las celdas toman uno de los valores de CheckState. La propiedad ThreeState determina si está vigente el modo binario o ternario.

DataGridViewCheckBoxColumn corresponde al tipo de columna especializado con el fin de contener celdas de este tipo. Para modelar las celdas dentro de una columna como un control DataGridViewCheckBoxCell existente, establezca la propiedad CellTemplate de la columna en esa celda. De manera predeterminada, la propiedad CellTemplate se inicializa con una nueva DataGridViewCheckBoxCell.

Las propiedades de la columna relacionadas con celdas actúan como contenedores para las propiedades con nombres similares de la celda de plantilla. Al cambiar los valores de propiedad de la celda de plantilla sólo se verán afectadas las celdas que estén basadas en la plantilla y se hayan agregado después del cambio. Al cambiar los valores de propiedad relacionados con las celdas de la columna, sin embargo, se actualizará la celda de la plantilla y también todas las demás celdas de la columna, actualizando su presentación si es necesario.

Cuando la celda actual es DataGridViewCheckBoxCell, la propiedad DataGridView..::.IsCurrentCellInEditMode siempre es true.

Normalmente, los valores de celda de una casilla están pensados para el almacenamiento, como cualquier otro dato, o para realizar operaciones masivas. Si desea responder inmediatamente cuando los usuarios hacen clic en una celda de una casilla, puede controlar el evento DataGridView..::.CellClick, pero este evento se produce antes de que se actualice el valor de la celda. Si necesita el nuevo valor en el momento del clic, una de las opciones es calcular que el valor esperado se basará en el valor actual. Otro enfoque es confirmar inmediatamente el cambio y controlar el evento DataGridView..::.CellValueChanged para responder a él. Para confirmar el cambio cuando se hace clic en la celda, debe controlar el evento DataGridView..::.CurrentCellDirtyStateChanged. En el controlador, si la celda actual es una celda de una casilla, llama al método DataGridView..::.CommitEdit y pase el valor Commit.

Notas para los herederos:

Cuando derive del control DataGridViewCheckBoxCell y agregue nuevas propiedades a la clase derivada, asegúrese de reemplazar el método Clone para copiar las nuevas propiedades durante las operaciones de clonación. También debe llamar al método Clone de la clase base para que las propiedades de la clase base se copien a la nueva celda.

En el ejemplo de código siguiente se utiliza DataGridViewCheckBoxColumn para hacer un seguimiento de qué empleados están en la oficina. La columna está compuesta de objetos DataGridViewCheckBoxCell. Este ejemplo forma parte de un ejemplo más extenso que está disponible en el tema de información general sobre la clase DataGridViewComboBoxColumn.

Visual Basic
Private Sub AddOutOfOfficeColumn()
    Dim column As New DataGridViewCheckBoxColumn()
    With column
        .HeaderText = ColumnName.OutOfOffice.ToString()
        .Name = ColumnName.OutOfOffice.ToString()
        .AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells
        .FlatStyle = FlatStyle.Standard
        .CellTemplate = New DataGridViewCheckBoxCell()
        .CellTemplate.Style.BackColor = Color.Beige
    End With

    DataGridView1.Columns.Insert(0, column)
End Sub
C#
private void AddOutOfOfficeColumn()
{
    DataGridViewCheckBoxColumn column = new DataGridViewCheckBoxColumn();
    {
        column.HeaderText = ColumnName.OutOfOffice.ToString();
        column.Name = ColumnName.OutOfOffice.ToString();
        column.AutoSizeMode = 
            DataGridViewAutoSizeColumnMode.DisplayedCells;
        column.FlatStyle = FlatStyle.Standard;
        column.ThreeState = true;
        column.CellTemplate = new DataGridViewCheckBoxCell();
        column.CellTemplate.Style.BackColor = Color.Beige;
    }

    DataGridView1.Columns.Insert(0, column);
}
Visual C++
private:
    void AddOutOfOfficeColumn()
    {
        DataGridViewCheckBoxColumn^ column = gcnew DataGridViewCheckBoxColumn();
        {
            column->HeaderText = ColumnName::OutOfOffice.ToString();
            column->Name = ColumnName::OutOfOffice.ToString();
            column->AutoSizeMode = 
                DataGridViewAutoSizeColumnMode::DisplayedCells;
            column->FlatStyle = FlatStyle::Standard;
            column->ThreeState = true;
            column->CellTemplate = gcnew DataGridViewCheckBoxCell();
            column->CellTemplate->Style->BackColor = Color::Beige;
        }

        DataGridView1->Columns->Insert(0, column);
    }
System..::.Object
  System.Windows.Forms..::.DataGridViewElement
    System.Windows.Forms..::.DataGridViewCell
      System.Windows.Forms..::.DataGridViewCheckBoxCell
Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

.NET Framework

Compatible con: 3.5, 3.0, 2.0
Contenido de la comunidad   ¿Qué es Community Content?
Agregar contenido nuevo RSS  Anotaciones
Processing
© 2012 Microsoft. Reservados todos los derechos. Términos de uso | Marcas Registradas | Privacidad
Page view tracker