IsCurrentCellInEditMode Property
TOC
Collapse the table of content
Expand the table of content

DataGridView.IsCurrentCellInEditMode Property

 

Gets a value indicating whether the currently active cell is being edited.

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

[BrowsableAttribute(false)]
public bool IsCurrentCellInEditMode { get; }

Property Value

Type: System.Boolean

true if the current cell is being edited; otherwise, false.

A DataGridViewCheckBoxCell that has focus is always in edit mode. If the current cell hosts an editing control and IsCurrentCellInEditMode is true, you can retrieve the editing control through the EditingControl property.

The following code example illustrates the use of this property. This example is part of a larger example available in the VirtualMode reference topic.

#region "data store maintance"
const int initialValue = -1;

private void dataGridView1_CellValueNeeded(object sender,
    DataGridViewCellValueEventArgs e)
{
    if (store.ContainsKey(e.RowIndex))
    {
        // Use the store if the e value has been modified 
        // and stored.            
        e.Value = store[e.RowIndex];
    }
    else if (newRowNeeded && e.RowIndex == numberOfRows)
    {
        if (dataGridView1.IsCurrentCellInEditMode)
        {
            e.Value = initialValue;
        }
        else
        {
            // Show a blank value if the cursor is just resting
            // on the last row.
            e.Value = String.Empty;
        }
    }
    else
    {
        e.Value = e.RowIndex;
    }
}

private void dataGridView1_CellValuePushed(object sender,
    DataGridViewCellValueEventArgs e)
{
    store.Add(e.RowIndex, int.Parse(e.Value.ToString()));
}
#endregion

private Dictionary<int, int> store = new Dictionary<int, int>();

.NET Framework
Available since 2.0
Return to top
Show:
© 2016 Microsoft