DataGridViewCell 类

定义

表示 DataGridView 控件中的单个单元格。Represents an individual cell in a DataGridView control.

public ref class DataGridViewCell abstract : System::Windows::Forms::DataGridViewElement, ICloneable, IDisposable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.DataGridViewCellConverter))]
public abstract class DataGridViewCell : System.Windows.Forms.DataGridViewElement, ICloneable, IDisposable
type DataGridViewCell = class
    inherit DataGridViewElement
    interface ICloneable
    interface IDisposable
Public MustInherit Class DataGridViewCell
Inherits DataGridViewElement
Implements ICloneable, IDisposable
继承
DataGridViewCell
派生
属性
实现

示例

下面的代码示例演示如何使用此类型。The following code example illustrates the use of this type. 有关此示例的详细信息,请参阅 如何:Windows 窗体 DataGridView 控件中的各个单元格添加工具提示。For more information about this example, see How to: Add ToolTips to Individual Cells in a Windows Forms DataGridView Control.

// Sets the ToolTip text for cells in the Rating column.
void dataGridView1_CellFormatting(Object^ /*sender*/, 
    DataGridViewCellFormattingEventArgs^ e)
{
    if ( (e->ColumnIndex == this->dataGridView1->Columns["Rating"]->Index)
        && e->Value != nullptr )
    {
        DataGridViewCell^ cell = 
            this->dataGridView1->Rows[e->RowIndex]->Cells[e->ColumnIndex];
        if (e->Value->Equals("*"))
        {                
            cell->ToolTipText = "very bad";
        }
        else if (e->Value->Equals("**"))
        {
            cell->ToolTipText = "bad";
        }
        else if (e->Value->Equals("***"))
        {
            cell->ToolTipText = "good";
        }
        else if (e->Value->Equals("****"))
        {
            cell->ToolTipText = "very good";
        }
    }
}
// Sets the ToolTip text for cells in the Rating column.
void dataGridView1_CellFormatting(object sender, 
    DataGridViewCellFormattingEventArgs e)
{
    if ( (e.ColumnIndex == this.dataGridView1.Columns["Rating"].Index)
        && e.Value != null )
    {
        DataGridViewCell cell = 
            this.dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex];
        if (e.Value.Equals("*"))
        {                
            cell.ToolTipText = "very bad";
        }
        else if (e.Value.Equals("**"))
        {
            cell.ToolTipText = "bad";
        }
        else if (e.Value.Equals("***"))
        {
            cell.ToolTipText = "good";
        }
        else if (e.Value.Equals("****"))
        {
            cell.ToolTipText = "very good";
        }
    }
}
' Sets the ToolTip text for cells in the Rating column.
Sub dataGridView1_CellFormatting(ByVal sender As Object, _
    ByVal e As DataGridViewCellFormattingEventArgs) _
    Handles dataGridView1.CellFormatting

    If e.ColumnIndex = Me.dataGridView1.Columns("Rating").Index _
        AndAlso (e.Value IsNot Nothing) Then

        With Me.dataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex)

            If e.Value.Equals("*") Then
                .ToolTipText = "very bad"
            ElseIf e.Value.Equals("**") Then
                .ToolTipText = "bad"
            ElseIf e.Value.Equals("***") Then
                .ToolTipText = "good"
            ElseIf e.Value.Equals("****") Then
                .ToolTipText = "very good"
            End If

        End With

    End If

End Sub

注解

DataGridViewCell 类表示 DataGridView 控件中的单个单元格。The DataGridViewCell class represents an individual cell in a DataGridView control. 您可以通过 DataGridViewRowCells 集合来检索单元格。You can retrieve cells through the Cells collection of a DataGridViewRow.

DataGridViewCell 的行和列标识单元格在 DataGridView中的位置。The row and column for a DataGridViewCell identify the cell's location in the DataGridView. 典型单元包含特定于包含它的行和列的数据。A typical cell contains data specific to the row and column in which it is contained. 通过设置单元属性并处理与之相关联的事件,可以通过多种方式对其进行自定义。The cell can be customized in a number of ways by setting its properties and handling the events associated with it.

继承者说明

当从 DataGridViewCell 派生并向派生类添加新属性时,请确保重写 Clone() 方法,以便在克隆操作过程中复制新属性。When you derive from DataGridViewCell 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.

构造函数

DataGridViewCell()

初始化 DataGridViewCell 类的新实例。Initializes a new instance of the DataGridViewCell class.

属性

AccessibilityObject

获取分配给 DataGridViewCell.DataGridViewCellAccessibleObjectDataGridViewCellGets the DataGridViewCell.DataGridViewCellAccessibleObject assigned to the DataGridViewCell.

ColumnIndex

获取此单元格的列索引。Gets the column index for this cell.

ContentBounds

获取环绕单元格内容区域的边框。Gets the bounding rectangle that encloses the cell's content area.

ContextMenuStrip

获取或设置与单元格关联的快捷菜单。Gets or sets the shortcut menu associated with the cell.

DataGridView

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

(继承自 DataGridViewElement)
DefaultNewRowValue

获取新记录所在行中单元格的默认值。Gets the default value for a cell in the row for new records.

Displayed

获取一个值,该值指示当前该单元格是否显示在屏幕上。Gets a value that indicates whether the cell is currently displayed on-screen.

EditedFormattedValue

获取该单元格的当前格式化值,而不考虑该单元格是否处于编辑模式,也不论是否尚未提交此值。Gets the current, formatted value of the cell, regardless of whether the cell is in edit mode and the value has not been committed.

EditType

获取单元格的寄宿编辑控件的类型。Gets the type of the cell's hosted editing control.

ErrorIconBounds

获取单元格的错误图标的界限。Gets the bounds of the error icon for the cell.

ErrorText

获取或设置描述与该单元格关联的错误条件的文本。Gets or sets the text describing an error condition associated with the cell.

FormattedValue

获取为显示进行格式化的单元格的值。Gets the value of the cell as formatted for display.

FormattedValueType

获取与单元格关联的格式化值的类型。Gets the type of the formatted value associated with the cell.

Frozen

获取指示单元格是否已被冻结的值。Gets a value indicating whether the cell is frozen.

HasStyle

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

InheritedState

获取该单元格从它的行和列的状态继承后的当前状态。Gets the current state of the cell as inherited from the state of its row and column.

InheritedStyle

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

IsInEditMode

获取一个值,该值指示此单元格当前是否处于编辑状态。Gets a value indicating whether this cell is currently being edited.

OwningColumn

获取包含此单元格的列。Gets the column that contains this cell.

OwningRow

获取包含此单元格的行。Gets the row that contains this cell.

PreferredSize

获取适合该单元格的矩形区域的大小(以像素为单位)。Gets the size, in pixels, of a rectangular area into which the cell can fit.

ReadOnly

获取或设置一个值,该值表示是否可以编辑该单元格的数据。Gets or sets a value indicating whether the cell's data can be edited.

Resizable

获取一个值,该值指示是否可以调整单元格的大小。Gets a value indicating whether the cell can be resized.

RowIndex

获取单元格父行的索引。Gets the index of the cell's parent row.

Selected

获取或设置一个值,该值指示是否已选定该单元格。Gets or sets a value indicating whether the cell has been selected.

Size

获取单元格的大小。Gets the size of the cell.

State

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

(继承自 DataGridViewElement)
Style

获取或设置单元格的样式。Gets or sets the style for the cell.

Tag

获取或设置包含有关单元格补充数据的对象。Gets or sets the object that contains supplemental data about the cell.

ToolTipText

获取或设置与此单元格关联的 ToolTip 文本。Gets or sets the ToolTip text associated with this cell.

Value

获取或设置与此单元格关联的值。Gets or sets the value associated with this cell.

ValueType

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

Visible

获取一个值,该值指示单元格是否位于已隐藏的行或列中。Gets a value indicating whether the cell is in a row or column that has been hidden.

方法

AdjustCellBorderStyle(DataGridViewAdvancedBorderStyle, DataGridViewAdvancedBorderStyle, Boolean, Boolean, Boolean, Boolean)

根据指定条件修改输入单元格的边框样式。Modifies the input cell border style according to the specified criteria.

BorderWidths(DataGridViewAdvancedBorderStyle)

返回一个 Rectangle,它表示所有单元格的边距宽度。Returns a Rectangle that represents the widths of all the cell margins.

ClickUnsharesRow(DataGridViewCellEventArgs)

指示在单击单元格时,是否对单元格所在的行取消共享。Indicates whether the cell's row will be unshared when the cell is clicked.

Clone()

创建此单元格的精确副本。Creates an exact copy of this cell.

ContentClickUnsharesRow(DataGridViewCellEventArgs)

指示在单击单元格的内容时,是否对该单元格所在的行取消共享。Indicates whether the cell's row will be unshared when the cell's content is clicked.

ContentDoubleClickUnsharesRow(DataGridViewCellEventArgs)

指示在双击单元格的内容时,是否对该单元格所在的行取消共享。Indicates whether the cell's row will be unshared when the cell's content is double-clicked.

CreateAccessibilityInstance()

DataGridViewCell 创建一个新的可访问对象。Creates a new accessible object for the DataGridViewCell.

DetachEditingControl()

DataGridView 中删除单元格的编辑控件。Removes the cell's editing control from the DataGridView.

Dispose()

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

Dispose(Boolean)

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

DoubleClickUnsharesRow(DataGridViewCellEventArgs)

指示在双击单元格时,是否对该单元格所在的行取消共享。Indicates whether the cell's row will be unshared when the cell is double-clicked.

EnterUnsharesRow(Int32, Boolean)

指示在焦点移到某单元格时,是否对相应父行取消共享。Indicates whether the parent row will be unshared when the focus moves to the cell.

Equals(Object)

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

(继承自 Object)
Finalize()

在使用“垃圾回收”回收 DataGridViewCell 之前,释放非托管资源并执行其他清理操作。Releases the unmanaged resources and performs other cleanup operations before the DataGridViewCell is reclaimed by garbage collection.

GetClipboardContent(Int32, Boolean, Boolean, Boolean, Boolean, String)

检索要复制到 Clipboard 的单元格的已设置格式的值。Retrieves the formatted value of the cell to copy to the Clipboard.

GetContentBounds(Graphics, DataGridViewCellStyle, Int32)

返回围绕单元格内容区域的边框,该区域是使用指定的 Graphics 和单元格样式计算的。Returns the bounding rectangle that encloses the cell's content area, which is calculated using the specified Graphics and cell style.

GetContentBounds(Int32)

使用默认的 Graphics 和单元格当前应用的单元格样式,返回围绕单元格内容区域的边框。Returns the bounding rectangle that encloses the cell's content area using a default Graphics and cell style currently in effect for the cell.

GetEditedFormattedValue(Int32, DataGridViewDataErrorContexts)

返回该单元格的当前格式化值,而不考虑该单元格是否处于编辑模式,也无论是否尚未提交此值。Returns the current, formatted value of the cell, regardless of whether the cell is in edit mode and the value has not been committed.

GetErrorIconBounds(Graphics, DataGridViewCellStyle, Int32)

如果显示了单元格的错误图标,则返回环绕该图标的边框。Returns the bounding rectangle that encloses the cell's error icon, if one is displayed.

GetErrorText(Int32)

返回表示单元格错误的字符串。Returns a string that represents the error for the cell.

GetFormattedValue(Object, Int32, DataGridViewCellStyle, TypeConverter, TypeConverter, DataGridViewDataErrorContexts)

获取为显示进行格式化的单元格的值。Gets the value of the cell as formatted for display.

GetHashCode()

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

(继承自 Object)
GetInheritedContextMenuStrip(Int32)

获取当前单元格的继承快捷菜单。Gets the inherited shortcut menu for the current cell.

GetInheritedState(Int32)

返回一个值,该值指示此单元格从它的行和列的状态继承后的当前状态。Returns a value indicating the current state of the cell as inherited from the state of its row and column.

GetInheritedStyle(DataGridViewCellStyle, Int32, Boolean)

获取应用于单元格的样式。Gets the style applied to the cell.

GetPreferredSize(Graphics, DataGridViewCellStyle, Int32, Size)

计算单元格的首选大小(以像素为单位)。Calculates the preferred size, in pixels, of the cell.

GetSize(Int32)

获取单元格的大小。Gets the size of the cell.

GetType()

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

(继承自 Object)
GetValue(Int32)

获取单元格的值。Gets the value of the cell.

InitializeEditingControl(Int32, Object, DataGridViewCellStyle)

初始化用于编辑单元格的控件。Initializes the control used to edit the cell.

KeyDownUnsharesRow(KeyEventArgs, Int32)

指示在焦点位于单元格上,同时用户按任意键时,是否对父行取消共享。Indicates whether the parent row is unshared if the user presses a key while the focus is on the cell.

KeyEntersEditMode(KeyEventArgs)

确定是否应基于给定键启动编辑模式。Determines if edit mode should be started based on the given key.

KeyPressUnsharesRow(KeyPressEventArgs, Int32)

指示在焦点位于该行的单元格上并同时按任意键时,是否取消行的共享。Indicates whether a row will be unshared if a key is pressed while a cell in the row has focus.

KeyUpUnsharesRow(KeyEventArgs, Int32)

指示当焦点位于单元格上,同时用户释放某个键时,是否对父行取消共享。Indicates whether the parent row is unshared when the user releases a key while the focus is on the cell.

LeaveUnsharesRow(Int32, Boolean)

指示在焦点离开某行的单元格时,是否对该行取消共享。Indicates whether a row will be unshared when the focus leaves a cell in the row.

MeasureTextHeight(Graphics, String, Font, Int32, TextFormatFlags)

根据指定的特性,获取指定文本的高度(以像素为单位)。Gets the height, in pixels, of the specified text, given the specified characteristics.

MeasureTextHeight(Graphics, String, Font, Int32, TextFormatFlags, Boolean)

根据指定的特性,获取指定文本的高度(以像素为单位)。Gets the height, in pixels, of the specified text, given the specified characteristics. 它还指示所需宽度是否大于指定的最大宽度。Also indicates whether the required width is greater than the specified maximum width.

MeasureTextPreferredSize(Graphics, String, Font, Single, TextFormatFlags)

根据指定的特性,获取指定文本的理想高度和宽度。Gets the ideal height and width of the specified text given the specified characteristics.

MeasureTextSize(Graphics, String, Font, TextFormatFlags)

根据指定的特性,获取指定文本的高度和宽度。Gets the height and width of the specified text given the specified characteristics.

MeasureTextWidth(Graphics, String, Font, Int32, TextFormatFlags)

根据指定的特性,获取指定文本的宽度(以像素为单位)。Gets the width, in pixels, of the specified text given the specified characteristics.

MemberwiseClone()

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

(继承自 Object)
MouseClickUnsharesRow(DataGridViewCellMouseEventArgs)

指示在鼠标指针位于某行的单元格上,同时用户单击鼠标按钮时,是否应对该行取消共享。Indicates whether a row will be unshared if the user clicks a mouse button while the pointer is on a cell in the row.

MouseDoubleClickUnsharesRow(DataGridViewCellMouseEventArgs)

指示当用户双击行中的单元格时,是否将对该行取消共享。Indicates whether a row will be unshared if the user double-clicks a cell in the row.

MouseDownUnsharesRow(DataGridViewCellMouseEventArgs)

指示在指针位于行中某个单元格上,同时用户按住鼠标按钮时,是否对该行取消共享。Indicates whether a row will be unshared when the user holds down a mouse button while the pointer is on a cell in the row.

MouseEnterUnsharesRow(Int32)

指示当鼠标指针移过行中某个单元格上时,该行是否取消共享状态。Indicates whether a row will be unshared when the mouse pointer moves over a cell in the row.

MouseLeaveUnsharesRow(Int32)

指示当鼠标指针离开某行时,该行是否取消共享状态。Indicates whether a row will be unshared when the mouse pointer leaves the row.

MouseMoveUnsharesRow(DataGridViewCellMouseEventArgs)

指示当鼠标指针移过行中某个单元格上时,该行是否取消共享状态。Indicates whether a row will be unshared when the mouse pointer moves over a cell in the row.

MouseUpUnsharesRow(DataGridViewCellMouseEventArgs)

指示在鼠标指针位于行中某个单元格上,同时用户释放鼠标按钮时,是否对该行取消共享。Indicates whether a row will be unshared when the user releases a mouse button while the pointer is on a cell in the row.

OnClick(DataGridViewCellEventArgs)

在单击单元格时进行调用。Called when the cell is clicked.

OnContentClick(DataGridViewCellEventArgs)

在单击单元格的内容时进行调用。Called when the cell's contents are clicked.

OnContentDoubleClick(DataGridViewCellEventArgs)

在双击单元格的内容时进行调用。Called when the cell's contents are double-clicked.

OnDataGridViewChanged()

在单元格的 DataGridView 属性更改时调用。Called when the DataGridView property of the cell changes.

OnDoubleClick(DataGridViewCellEventArgs)

在双击单元格时进行调用。Called when the cell is double-clicked.

OnEnter(Int32, Boolean)

在焦点移动到单元格时进行调用。Called when the focus moves to a cell.

OnKeyDown(KeyEventArgs, Int32)

在焦点位于单元格上并同时按下字符键时进行调用。Called when a character key is pressed while the focus is on a cell.

OnKeyPress(KeyPressEventArgs, Int32)

在焦点位于单元格上并同时按任意键时进行调用。Called when a key is pressed while the focus is on a cell.

OnKeyUp(KeyEventArgs, Int32)

在焦点位于单元格上并同时释放字符键时进行调用。Called when a character key is released while the focus is on a cell.

OnLeave(Int32, Boolean)

当焦点从单元格上移开时调用。Called when the focus moves from a cell.

OnMouseClick(DataGridViewCellMouseEventArgs)

在指针位于单元格上且用户同时单击鼠标按钮时进行调用。Called when the user clicks a mouse button while the pointer is on a cell.

OnMouseDoubleClick(DataGridViewCellMouseEventArgs)

在指针位于单元格上,同时用户双击鼠标按钮时进行调用。Called when the user double-clicks a mouse button while the pointer is on a cell.

OnMouseDown(DataGridViewCellMouseEventArgs)

在指针位于单元格上,同时用户按住鼠标按钮时进行调用。Called when the user holds down a mouse button while the pointer is on a cell.

OnMouseEnter(Int32)

当鼠标指针移到单元格上时调用。Called when the mouse pointer moves over a cell.

OnMouseLeave(Int32)

在鼠标指针离开单元格时调用。Called when the mouse pointer leaves the cell.

OnMouseMove(DataGridViewCellMouseEventArgs)

当鼠标指针在单元格内移动时调用。Called when the mouse pointer moves within a cell.

OnMouseUp(DataGridViewCellMouseEventArgs)

在指针位于单元格上,同时用户释放鼠标按钮时进行调用。Called when the user releases a mouse button while the pointer is on a cell.

Paint(Graphics, Rectangle, Rectangle, Int32, DataGridViewElementStates, Object, Object, String, DataGridViewCellStyle, DataGridViewAdvancedBorderStyle, DataGridViewPaintParts)

绘制当前的 DataGridViewCellPaints the current DataGridViewCell.

PaintBorder(Graphics, Rectangle, Rectangle, DataGridViewCellStyle, DataGridViewAdvancedBorderStyle)

绘制当前 DataGridViewCell 的边框。Paints the border of the current DataGridViewCell.

PaintErrorIcon(Graphics, Rectangle, Rectangle, String)

绘制当前 DataGridViewCell 的错误图标。Paints the error icon of the current DataGridViewCell.

ParseFormattedValue(Object, DataGridViewCellStyle, TypeConverter, TypeConverter)

将为便于显示而进行了格式设置的值转换为实际的单元格值。Converts a value formatted for display to an actual cell value.

PositionEditingControl(Boolean, Boolean, Rectangle, Rectangle, DataGridViewCellStyle, Boolean, Boolean, Boolean, Boolean)

设置由 DataGridView 控件中的单元格承载的编辑控件的位置和大小。Sets the location and size of the editing control hosted by a cell in the DataGridView control.

PositionEditingPanel(Rectangle, Rectangle, DataGridViewCellStyle, Boolean, Boolean, Boolean, Boolean)

设置单元格承载的编辑面板的位置和大小,并返回编辑面板内编辑控件的正常界限。Sets the location and size of the editing panel hosted by the cell, and returns the normal bounds of the editing control within the editing panel.

RaiseCellClick(DataGridViewCellEventArgs)

引发 CellClick 事件。Raises the CellClick event.

(继承自 DataGridViewElement)
RaiseCellContentClick(DataGridViewCellEventArgs)

引发 CellContentClick 事件。Raises the CellContentClick event.

(继承自 DataGridViewElement)
RaiseCellContentDoubleClick(DataGridViewCellEventArgs)

引发 CellContentDoubleClick 事件。Raises the CellContentDoubleClick event.

(继承自 DataGridViewElement)
RaiseCellValueChanged(DataGridViewCellEventArgs)

引发 CellValueChanged 事件。Raises the CellValueChanged event.

(继承自 DataGridViewElement)
RaiseDataError(DataGridViewDataErrorEventArgs)

引发 DataError 事件。Raises the DataError event.

(继承自 DataGridViewElement)
RaiseMouseWheel(MouseEventArgs)

引发 MouseWheel 事件。Raises the MouseWheel event.

(继承自 DataGridViewElement)
SetValue(Int32, Object)

设置单元格的值。Sets the value of the cell.

ToString()

返回描述当前对象的字符串。Returns a string that describes the current object.

适用于

另请参阅