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)

public:
[BrowsableAttribute(false)]
property bool IsCurrentCellInEditMode {
	bool 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.

#pragma region Data store maintance

    void VirtualConnector::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 = gcnew Int32(store->default[e->RowIndex]); 
        }
        else if (newRowNeeded && e->RowIndex == numberOfRows)
        {
            if (dataGridView1->IsCurrentCellInEditMode)
            {
                e->Value = initialValue;
            }
            else
            {
                // Show a blank e if the cursor is just loitering
                // over(the) last row.
                e->Value = String::Empty;
            }
        }
        else
        {
            e->Value = e->RowIndex;
        }
    }

    void VirtualConnector::dataGridView1_CellValuePushed
        (Object^ sender, DataGridViewCellValueEventArgs^ e)
    {
        String^ value = e->Value->ToString();
        store[e->RowIndex] = Int32::Parse(value, 
            CultureInfo::CurrentCulture);
    }
#pragma endregion

.NET Framework
Available since 2.0
Return to top
Show: