DataGridView.BeginEdit Method (Boolean)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Puts the current cell in edit mode.

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

public virtual bool BeginEdit(
	bool selectAll


Type: System.Boolean

true to select all the cell's contents; false to not select any contents.

Return Value

Type: System.Boolean

true if the current cell is already in edit mode or successfully enters edit mode; otherwise, false.

Exception Condition

CurrentCell is not set to a valid cell.


This method was called in a handler for the CellBeginEdit event.


The type indicated by the cell's EditType property does not derive from the Control type.


The type indicated by the cell's EditType property does not implement the IDataGridViewEditingControl interface.


Initialization of the editing cell value failed and either there is no handler for the DataError event or the handler has set the DataGridViewDataErrorEventArgs.ThrowException property to true. The exception object can typically be cast to type FormatException.

This method returns false if the cell fails to enter edit mode, which can happen for a number of reasons. This method returns false if the current cell is read-only. It also returns false if the cell EditType property is null (meaning the cell cannot host an editing control) and the cell type does not implement the IDataGridViewEditingCell interface.

If the cell supports editing, this method raises the CellBeginEdit event, which can be canceled, and returns false if an event handler cancels the edit. If the edit is not canceled and the cell can host an editing control, this method initializes the control and displays it. If the initialization fails, this method returns false.

If the cell successfully enters edit mode, the IsCurrentCellInEditMode property returns true.

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 !=

.NET Framework
Available since 2.0
Return to top