DataGridView.CellMouseEnter Event
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Occurs when the mouse pointer enters a cell.
public:
event System::Windows::Forms::DataGridViewCellEventHandler ^ CellMouseEnter;
public event System.Windows.Forms.DataGridViewCellEventHandler CellMouseEnter;
public event System.Windows.Forms.DataGridViewCellEventHandler? CellMouseEnter;
member this.CellMouseEnter : System.Windows.Forms.DataGridViewCellEventHandler
Public Custom Event CellMouseEnter As DataGridViewCellEventHandler
Event Type
Examples
The following code example shows a CellMouseEnter event handler in a Tic-Tac-Toe game implementation that uses image columns in a DataGridView control. The event handler uses the cell value to determine the cursor and ToolTip to display.
This code is part of a larger example shown in How to: Work with Image Columns in the Windows Forms DataGridView Control.
void dataGridView1_CellMouseEnter( Object^ sender, DataGridViewCellEventArgs^ e )
{
Bitmap^ markingUnderMouse = dynamic_cast<Bitmap^>(dataGridView1->Rows[ e->RowIndex ]->Cells[ e->ColumnIndex ]->Value);
if ( markingUnderMouse == blank )
{
dataGridView1->Cursor = Cursors::Default;
}
else
if ( markingUnderMouse == o || markingUnderMouse == x )
{
dataGridView1->Cursor = Cursors::No;
ToolTip(e,true);
}
}
void ToolTip( DataGridViewCellEventArgs^ e, bool showTip )
{
DataGridViewImageCell^ cell = dynamic_cast<DataGridViewImageCell^>(dataGridView1->Rows[ e->RowIndex ]->Cells[ e->ColumnIndex ]);
DataGridViewImageColumn^ imageColumn = dynamic_cast<DataGridViewImageColumn^>(dataGridView1->Columns[ cell->ColumnIndex ]);
if ( showTip )
cell->ToolTipText = imageColumn->Description;
else
{
cell->ToolTipText = String::Empty;
}
}
void dataGridView1_CellMouseLeave( Object^ sender, DataGridViewCellEventArgs^ e )
{
ToolTip( e, false );
dataGridView1->Cursor = Cursors::Default;
}
private void dataGridView1_CellMouseEnter(object sender,
DataGridViewCellEventArgs e)
{
Bitmap markingUnderMouse = (Bitmap)dataGridView1.
Rows[e.RowIndex].
Cells[e.ColumnIndex].Value;
if (markingUnderMouse == blank)
{
dataGridView1.Cursor = Cursors.Default;
}
else if (markingUnderMouse == o || markingUnderMouse == x)
{
dataGridView1.Cursor = Cursors.No;
ToolTip(e, true);
}
}
private void ToolTip(DataGridViewCellEventArgs e, bool showTip)
{
DataGridViewImageCell cell = (DataGridViewImageCell)
dataGridView1
.Rows[e.RowIndex].Cells[e.ColumnIndex];
DataGridViewImageColumn imageColumn =
(DataGridViewImageColumn)
dataGridView1.Columns[cell.ColumnIndex];
if (showTip)
{
cell.ToolTipText = imageColumn.Description;
}
else { cell.ToolTipText = String.Empty; }
}
private void dataGridView1_CellMouseLeave(object sender,
DataGridViewCellEventArgs e)
{
ToolTip(e, false);
dataGridView1.Cursor = Cursors.Default;
}
Private Sub dataGridView1_CellMouseEnter(ByVal sender As Object, _
ByVal e As DataGridViewCellEventArgs) _
Handles dataGridView1.CellMouseEnter
Dim markingUnderMouse As Bitmap = _
CType(dataGridView1.Rows(e.RowIndex). _
Cells(e.ColumnIndex).Value, Bitmap)
If markingUnderMouse Is blank Then
dataGridView1.Cursor = Cursors.Default
ElseIf markingUnderMouse Is o OrElse markingUnderMouse Is x Then
dataGridView1.Cursor = Cursors.No
ToolTip(e)
End If
End Sub
Private Sub ToolTip( _
ByVal e As DataGridViewCellEventArgs)
Dim cell As DataGridViewImageCell = _
CType(dataGridView1.Rows(e.RowIndex). _
Cells(e.ColumnIndex), DataGridViewImageCell)
Dim imageColumn As DataGridViewImageColumn = _
CType(dataGridView1.Columns(cell.ColumnIndex), _
DataGridViewImageColumn)
cell.ToolTipText = imageColumn.Description
End Sub
Private Sub dataGridView1_CellMouseLeave(ByVal sender As Object, _
ByVal e As DataGridViewCellEventArgs) _
Handles dataGridView1.CellMouseLeave
dataGridView1.Cursor = Cursors.Default
End Sub
Remarks
For more information about how to handle events, see Handling and Raising Events.