แก้ไข

แชร์ผ่าน


DataGridView.OnMouseClick(MouseEventArgs) Method

Definition

Raises the MouseClick event.

protected:
 override void OnMouseClick(System::Windows::Forms::MouseEventArgs ^ e);
protected override void OnMouseClick (System.Windows.Forms.MouseEventArgs e);
override this.OnMouseClick : System.Windows.Forms.MouseEventArgs -> unit
Protected Overrides Sub OnMouseClick (e As MouseEventArgs)

Parameters

e
MouseEventArgs

A MouseEventArgs that contains the event data.

Exceptions

The control is configured to enter edit mode when it receives focus, but initialization of the editing cell value failed and either there is no handler for the DataError event or the handler has set the ThrowException property to true. The exception object can typically be cast to type FormatException.

Examples

The following code example demonstrates the use of this method.

// Override OnMouseClick in a class derived from DataGridViewCell to 
// enter edit mode when the user clicks the cell. 
protected override void OnMouseClick(DataGridViewCellMouseEventArgs e)
{
    if (base.DataGridView != null)
    {
        Point point1 = base.DataGridView.CurrentCellAddress;
        if (point1.X == e.ColumnIndex &&
            point1.Y == e.RowIndex &&
            e.Button == MouseButtons.Left &&
            base.DataGridView.EditMode !=
            DataGridViewEditMode.EditProgrammatically)
        {
            base.DataGridView.BeginEdit(true);
        }
    }
}
' Override OnMouseClick in a class derived from DataGridViewCell to 
' enter edit mode when the user clicks the cell. 
Protected Overrides Sub OnMouseClick( _
    ByVal e As DataGridViewCellMouseEventArgs)

    If MyBase.DataGridView IsNot Nothing Then

        Dim point1 As Point = MyBase.DataGridView.CurrentCellAddress
        If point1.X = e.ColumnIndex And _
            point1.Y = e.RowIndex And _
            e.Button = MouseButtons.Left And _
            Not MyBase.DataGridView.EditMode = _
            DataGridViewEditMode.EditProgrammatically Then

            MyBase.DataGridView.BeginEdit(True)

        End If
    End If
End Sub

Remarks

Raising an event invokes the event handler through a delegate. For more information, see Handling and Raising Events.

The OnMouseClick method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class.

Notes to Inheritors

When overriding OnMouseClick(MouseEventArgs) in a derived class, be sure to call the base class's OnMouseClick(MouseEventArgs) method so that registered delegates receive the event.

Applies to

See also