DataGridViewCell::ToolTipText Property


Gets or sets the ToolTip text associated with this cell.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

property String^ ToolTipText {
	String^ get();
	void set(String^ value);

Property Value

Type: System::String^

The ToolTip text associated with the cell. The default is String::Empty.

The value of this property is displayed as the cell ToolTip when the mouse pointer is over the cell and the property value is not Empty. If the value of this property is Empty, the cell will display a ToolTip containing the value of the cell if the value is truncated in the cell display; otherwise, the cell will not display a ToolTip. You can also prevent the display of a ToolTip by setting the DataGridView::ShowCellToolTips property to false.

When the DataGridView control DataSource property is set or its VirtualMode property is true, getting the value of the ToolTipText property raises the CellToolTipTextNeeded event of the control and returns the value of the DataGridViewCellToolTipTextNeededEventArgs::ToolTipText property as specified in the event handler. If there are no handlers for the event, getting the value of the ToolTipText property returns the previously specified value or its default value of Empty.

Handling the CellToolTipTextNeeded event is primarily useful when working with large amounts of data to avoid performance penalties when setting the cell ToolTipText value for multiple cells. For more information, see Best Practices for Scaling the Windows Forms DataGridView Control.

Changing this property raises the CellToolTipTextChanged event on the owning DataGridView, if one exists.

The following code example shows how to set the ToolTipText property within an event handler for the CellFormatting event. This example is part of a larger code example provided in 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 = 
        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";

.NET Framework
Available since 2.0
Return to top