DataGridViewCheckBoxColumn DataGridViewCheckBoxColumn DataGridViewCheckBoxColumn DataGridViewCheckBoxColumn Class


承载一个 DataGridViewCheckBoxCell 对象集合。Hosts a collection of DataGridViewCheckBoxCell objects.

public ref class DataGridViewCheckBoxColumn : System::Windows::Forms::DataGridViewColumn
[System.Drawing.ToolboxBitmap(typeof(System.Windows.Forms.DataGridViewCheckBoxColumn), "DataGridViewCheckBoxColumn.bmp")]
[System.Drawing.ToolboxBitmap(typeof(System.Windows.Forms.DataGridViewCheckBoxColumn), "DataGridViewCheckBoxColumn")]
public class DataGridViewCheckBoxColumn : System.Windows.Forms.DataGridViewColumn
type DataGridViewCheckBoxColumn = class
    inherit DataGridViewColumn
Public Class DataGridViewCheckBoxColumn
Inherits DataGridViewColumn


下面的代码示例演示如何使用DataGridViewCheckBoxColumn标记出办公室外的雇员。The following code example demonstrates how to use a DataGridViewCheckBoxColumn to mark which employees are out of the office. 此示例是DataGridViewComboBoxColumn类概述主题中提供的一个更大示例的一部分。This example is part of a larger example available in the DataGridViewComboBoxColumn class overview topic.

    void AddOutOfOfficeColumn()
        DataGridViewCheckBoxColumn^ column = gcnew DataGridViewCheckBoxColumn();
            column->HeaderText = ColumnName::OutOfOffice.ToString();
            column->Name = ColumnName::OutOfOffice.ToString();
            column->AutoSizeMode = 
            column->FlatStyle = FlatStyle::Standard;
            column->ThreeState = true;
            column->CellTemplate = gcnew DataGridViewCheckBoxCell();
            column->CellTemplate->Style->BackColor = Color::Beige;

        DataGridView1->Columns->Insert(0, column);
private void AddOutOfOfficeColumn()
    DataGridViewCheckBoxColumn column = new DataGridViewCheckBoxColumn();
        column.HeaderText = ColumnName.OutOfOffice.ToString();
        column.Name = ColumnName.OutOfOffice.ToString();
        column.AutoSizeMode = 
        column.FlatStyle = FlatStyle.Standard;
        column.ThreeState = true;
        column.CellTemplate = new DataGridViewCheckBoxCell();
        column.CellTemplate.Style.BackColor = Color.Beige;

    DataGridView1.Columns.Insert(0, column);
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


类是DataGridViewColumn类的专用类型, 用于以逻辑方式承载指示二进制状态的单元格。 DataGridViewCheckBoxColumnThe DataGridViewCheckBoxColumn class is a specialized type of the DataGridViewColumn class used to logically host cells that indicate binary state. 在中, 每DataGridViewCheckBoxCellDataGridViewRow都与它相交。 DataGridViewCheckBoxColumnA DataGridViewCheckBoxColumn has an associated DataGridViewCheckBoxCell in every DataGridViewRow that intersects it. 每个单元格提供类似CheckBox于控件的用户界面 (UI)。Each cell supplies a user interface (UI) that is similar to a CheckBox control.

此列类型的默认排序模式为NotSortableThe default sort mode for this column type is NotSortable.

通常, 复选框单元值适用于存储 (如任何其他数据) 或用于执行批量操作。Typically, check box cell values are intended either for storage, like any other data, or for performing bulk operations. 如果希望在用户单击复选框单元时立即做出响应, 可以处理DataGridView.CellContentClick事件, 但此事件发生在更新单元格值之前。If you want to respond immediately when users click a check box cell, you can handle the DataGridView.CellContentClick event, but this event occurs before the cell value is updated. 如果在单击时需要新值, 一个选项是根据当前值计算预期值的值。If you need the new value at the time of the click, one option is to calculate what the expected value will be based on the current value. 另一种方法是立即提交更改, 并处理DataGridView.CellValueChanged事件以响应事件。Another approach is to commit the change immediately, and handle the DataGridView.CellValueChanged event to respond to it. 若要在单击单元格时提交更改, 则必须处理DataGridView.CurrentCellDirtyStateChanged事件。To commit the change when the cell is clicked, you must handle the DataGridView.CurrentCellDirtyStateChanged event. 在处理程序中, 如果当前单元格为复选框单元, 则调用DataGridView.CommitEdit方法并传入Commit值。In the handler, if the current cell is a check box cell, call the DataGridView.CommitEdit method and pass in the Commit value.


当从DataGridViewCheckBoxColumn派生类派生并向其添加新属性时, 请确保Clone()重写方法以在克隆操作过程中复制新属性。When you derive from DataGridViewCheckBoxColumn and add new properties to the derived class, be sure to override the Clone() method to copy the new properties during cloning operations. 还应调用基类的Clone()方法, 以便将基类的属性复制到新单元。You should also call the base class's Clone() method so that the properties of the base class are copied to the new cell.


DataGridViewCheckBoxColumn() DataGridViewCheckBoxColumn() DataGridViewCheckBoxColumn() DataGridViewCheckBoxColumn()

DataGridViewCheckBoxColumn 类的新实例初始化为默认状态。Initializes a new instance of the DataGridViewCheckBoxColumn class to the default state.

DataGridViewCheckBoxColumn(Boolean) DataGridViewCheckBoxColumn(Boolean) DataGridViewCheckBoxColumn(Boolean) DataGridViewCheckBoxColumn(Boolean)

初始化 DataGridViewCheckBoxColumn 的新实例并将其配置为显示具有两种或三种状态的复选框。Initializes a new instance of the DataGridViewCheckBoxColumn and configures it to display check boxes with two or three states.


AutoSizeMode AutoSizeMode AutoSizeMode AutoSizeMode

获取或设置模式,通过此模式列可以自动调整其宽度。Gets or sets the mode by which the column automatically adjusts its width.

(Inherited from DataGridViewColumn)
CellTemplate CellTemplate CellTemplate CellTemplate

获取或设置用于创建新单元格的模板。Gets or sets the template used to create new cells.

CellType CellType CellType CellType

获取单元格模板的运行时类型。Gets the run-time type of the cell template.

(Inherited from DataGridViewColumn)
ContextMenuStrip ContextMenuStrip ContextMenuStrip ContextMenuStrip

获取或设置列的快捷菜单。Gets or sets the shortcut menu for the column.

(Inherited from DataGridViewColumn)
DataGridView DataGridView DataGridView DataGridView

获取与此元素关联的 DataGridView 控件。Gets the DataGridView control associated with this element.

(Inherited from DataGridViewElement)
DataPropertyName DataPropertyName DataPropertyName DataPropertyName

获取或设置数据源属性的名称或与 DataGridViewColumn 绑定的数据库列的名称。Gets or sets the name of the data source property or database column to which the DataGridViewColumn is bound.

(Inherited from DataGridViewColumn)
DefaultCellStyle DefaultCellStyle DefaultCellStyle DefaultCellStyle

获取或设置列的默认单元格样式。Gets or sets the column's default cell style.

DefaultHeaderCellType DefaultHeaderCellType DefaultHeaderCellType DefaultHeaderCellType

获取或设置默认标题单元格的运行时类型。Gets or sets the run-time type of the default header cell.

(Inherited from DataGridViewBand)
Displayed Displayed Displayed Displayed

获取一个值,该值指示带区当前是否显示在屏幕上。Gets a value indicating whether the band is currently displayed onscreen.

(Inherited from DataGridViewBand)
DisplayIndex DisplayIndex DisplayIndex DisplayIndex

相对于当前所显示各列,获取或设置列的显示顺序。Gets or sets the display order of the column relative to the currently displayed columns.

(Inherited from DataGridViewColumn)
DividerWidth DividerWidth DividerWidth DividerWidth

获取或设置列分隔符的宽度(以像素为单位)。Gets or sets the width, in pixels, of the column divider.

(Inherited from DataGridViewColumn)
FalseValue FalseValue FalseValue FalseValue

获取或设置对应于 false 单元格值(显示为取消选中的复选框)的基础值。Gets or sets the underlying value corresponding to a cell value of false, which appears as an unchecked box.

FillWeight FillWeight FillWeight FillWeight

获取或设置一个值,表示当该列处于填充模式时,相对于控件中处于填充模式的其他列的宽度。Gets or sets a value that represents the width of the column when it is in fill mode relative to the widths of other fill-mode columns in the control.

(Inherited from DataGridViewColumn)
FlatStyle FlatStyle FlatStyle FlatStyle

获取或设置复选框单元格的平面样式外观。Gets or sets the flat style appearance of the check box cells.

Frozen Frozen Frozen Frozen

获取或设置一个值,指示当用户水平滚动 DataGridView 控件时,列是否移动。Gets or sets a value indicating whether a column will move when a user scrolls the DataGridView control horizontally.

(Inherited from DataGridViewColumn)
HasDefaultCellStyle HasDefaultCellStyle HasDefaultCellStyle HasDefaultCellStyle

获取指示是否已设置 DefaultCellStyle 属性的值。Gets a value indicating whether the DefaultCellStyle property has been set.

(Inherited from DataGridViewBand)
HeaderCell HeaderCell HeaderCell HeaderCell

获取或设置表示列标题的 DataGridViewColumnHeaderCellGets or sets the DataGridViewColumnHeaderCell that represents the column header.

(Inherited from DataGridViewColumn)
HeaderCellCore HeaderCellCore HeaderCellCore HeaderCellCore

获取或设置 DataGridViewBand 的标题单元格。Gets or sets the header cell of the DataGridViewBand.

(Inherited from DataGridViewBand)
HeaderText HeaderText HeaderText HeaderText

获取或设置列标题单元格的标题文本。Gets or sets the caption text on the column's header cell.

(Inherited from DataGridViewColumn)
IndeterminateValue IndeterminateValue IndeterminateValue IndeterminateValue

获取或设置对应于不确定或 null 单元格值(显示为禁用复选框)的基础值。Gets or sets the underlying value corresponding to an indeterminate or null cell value, which appears as a disabled checkbox.

Index Index Index Index

获取带区在 DataGridView 控件中的相对位置。Gets the relative position of the band within the DataGridView control.

(Inherited from DataGridViewBand)
InheritedAutoSizeMode InheritedAutoSizeMode InheritedAutoSizeMode InheritedAutoSizeMode

获取对该列有效的缩放模式。Gets the sizing mode in effect for the column.

(Inherited from DataGridViewColumn)
InheritedStyle InheritedStyle InheritedStyle InheritedStyle

获取当前应用于该列的单元格样式。Gets the cell style currently applied to the column.

(Inherited from DataGridViewColumn)
IsDataBound IsDataBound IsDataBound IsDataBound

获取一个值,指示该列是否绑定到某个数据源。Gets a value indicating whether the column is bound to a data source.

(Inherited from DataGridViewColumn)
IsRow IsRow IsRow IsRow

获取一个值,该值指示带区是否表示一个行。Gets a value indicating whether the band represents a row.

(Inherited from DataGridViewBand)
MinimumWidth MinimumWidth MinimumWidth MinimumWidth

获取或设置列的最小宽度(以像素为单位)。Gets or sets the minimum width, in pixels, of the column.

(Inherited from DataGridViewColumn)
Name Name Name Name

获取或设置列名称。Gets or sets the name of the column.

(Inherited from DataGridViewColumn)
ReadOnly ReadOnly ReadOnly ReadOnly

获取或设置一个值,指示用户是否可以编辑列的单元格。Gets or sets a value indicating whether the user can edit the column's cells.

(Inherited from DataGridViewColumn)
Resizable Resizable Resizable Resizable

获取或设置一个值,指示该列的大小是否可调。Gets or sets a value indicating whether the column is resizable.

(Inherited from DataGridViewColumn)
Selected Selected Selected Selected

获取或设置一个值,该值指示带区是否为被选定。Gets or sets a value indicating whether the band is in a selected user interface (UI) state.

(Inherited from DataGridViewBand)
Site Site Site Site

获取或设置列的站点。Gets or sets the site of the column.

(Inherited from DataGridViewColumn)
SortMode SortMode SortMode SortMode

获取或设置列的排序模式。Gets or sets the sort mode for the column.

(Inherited from DataGridViewColumn)
State State State State

获取元素的用户界面 (UI) 状态。Gets the user interface (UI) state of the element.

(Inherited from DataGridViewElement)
Tag Tag Tag Tag

获取或设置包含与带区关联的数据的对象。Gets or sets the object that contains data to associate with the band.

(Inherited from DataGridViewBand)
ThreeState ThreeState ThreeState ThreeState

获取或设置一个值,该值指示此寄宿的复选框单元格是否允许三种复选状态而不是两种。Gets or sets a value indicating whether the hosted check box cells will allow three check states rather than two.

ToolTipText ToolTipText ToolTipText ToolTipText

获取或设置用于工具提示的文本。Gets or sets the text used for ToolTips.

(Inherited from DataGridViewColumn)
TrueValue TrueValue TrueValue TrueValue

获取或设置对应于 true 单元格值(显示为取消选中的复选框)的基础值。Gets or sets the underlying value corresponding to a cell value of true, which appears as a checked box.

ValueType ValueType ValueType ValueType

获取或设置列单元格中值的数据类型。Gets or sets the data type of the values in the column's cells.

(Inherited from DataGridViewColumn)
Visible Visible Visible Visible

获取或设置一个值,指示该列是否可见。Gets or sets a value indicating whether the column is visible.

(Inherited from DataGridViewColumn)
Width Width Width Width

获取或设置列的当前宽度。Gets or sets the current width of the column.

(Inherited from DataGridViewColumn)


Clone() Clone() Clone() Clone()

创建此区段的一个完全相同的副本。Creates an exact copy of this band.

(Inherited from DataGridViewColumn)
Dispose() Dispose() Dispose() Dispose()

释放由 DataGridViewBand 使用的所有资源。Releases all resources used by the DataGridViewBand.

(Inherited from DataGridViewBand)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

释放由 DataGridViewBand 占用的非托管资源,还可以另外再释放托管资源。Releases the unmanaged resources used by the DataGridViewBand and optionally releases the managed resources.

(Inherited from DataGridViewColumn)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

确定指定的对象是否等于当前对象。Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

作为默认哈希函数。Serves as the default hash function.

(Inherited from Object)
GetPreferredWidth(DataGridViewAutoSizeColumnMode, Boolean) GetPreferredWidth(DataGridViewAutoSizeColumnMode, Boolean) GetPreferredWidth(DataGridViewAutoSizeColumnMode, Boolean) GetPreferredWidth(DataGridViewAutoSizeColumnMode, Boolean)

根据指定条件计算列的理想宽度。Calculates the ideal width of the column based on the specified criteria.

(Inherited from DataGridViewColumn)
GetType() GetType() GetType() GetType()

获取当前实例的 TypeGets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

创建当前 Object 的浅表副本。Creates a shallow copy of the current Object.

(Inherited from Object)
OnDataGridViewChanged() OnDataGridViewChanged() OnDataGridViewChanged() OnDataGridViewChanged()

当带区与其他 DataGridView 关联时调用。Called when the band is associated with a different DataGridView.

(Inherited from DataGridViewBand)
RaiseCellClick(DataGridViewCellEventArgs) RaiseCellClick(DataGridViewCellEventArgs) RaiseCellClick(DataGridViewCellEventArgs) RaiseCellClick(DataGridViewCellEventArgs)

引发 CellClick 事件。Raises the CellClick event.

(Inherited from DataGridViewElement)
RaiseCellContentClick(DataGridViewCellEventArgs) RaiseCellContentClick(DataGridViewCellEventArgs) RaiseCellContentClick(DataGridViewCellEventArgs) RaiseCellContentClick(DataGridViewCellEventArgs)

引发 CellContentClick 事件。Raises the CellContentClick event.

(Inherited from DataGridViewElement)
RaiseCellContentDoubleClick(DataGridViewCellEventArgs) RaiseCellContentDoubleClick(DataGridViewCellEventArgs) RaiseCellContentDoubleClick(DataGridViewCellEventArgs) RaiseCellContentDoubleClick(DataGridViewCellEventArgs)

引发 CellContentDoubleClick 事件。Raises the CellContentDoubleClick event.

(Inherited from DataGridViewElement)
RaiseCellValueChanged(DataGridViewCellEventArgs) RaiseCellValueChanged(DataGridViewCellEventArgs) RaiseCellValueChanged(DataGridViewCellEventArgs) RaiseCellValueChanged(DataGridViewCellEventArgs)

引发 CellValueChanged 事件。Raises the CellValueChanged event.

(Inherited from DataGridViewElement)
RaiseDataError(DataGridViewDataErrorEventArgs) RaiseDataError(DataGridViewDataErrorEventArgs) RaiseDataError(DataGridViewDataErrorEventArgs) RaiseDataError(DataGridViewDataErrorEventArgs)

引发 DataError 事件。Raises the DataError event.

(Inherited from DataGridViewElement)
RaiseMouseWheel(MouseEventArgs) RaiseMouseWheel(MouseEventArgs) RaiseMouseWheel(MouseEventArgs) RaiseMouseWheel(MouseEventArgs)

引发 MouseWheel 事件。Raises the MouseWheel event.

(Inherited from DataGridViewElement)
ToString() ToString() ToString() ToString()

获取一个描述该列的字符串。Gets a string that describes the column.


Disposed Disposed Disposed Disposed

释放 DataGridViewColumn 时发生。Occurs when the DataGridViewColumn is disposed.

(Inherited from DataGridViewColumn)