DataGridView.CellMouseEnter Ereignis
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Tritt auf, wenn der Mauszeiger in eine Zelle eintritt.
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
Ereignistyp
Beispiele
Das folgende Codebeispiel zeigt einen CellMouseEnter Ereignishandler in einer Tic-Tac-Toe-Spielimplementierung, die Bildspalten in einem DataGridView Steuerelement verwendet. Der Ereignishandler verwendet den Zellenwert, um den anzuzeigenden Cursor und die QuickInfo zu bestimmen.
Dieser Code ist Teil eines größeren Beispiels, das unter Vorgehensweise: Arbeiten mit Bildspalten im Windows Forms DataGridView-Steuerelement gezeigt wird.
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
Hinweise
Weitere Informationen zum Behandeln von Ereignissen finden Sie unter behandeln und Auslösen von Ereignissen.