This documentation is archived and is not being maintained.

DataGridView.BeginEdit Method

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.


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

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0