DataGridView.EditingControl Property

 
System_CAPS_noteNote

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

Gets the control hosted by the current cell, if a cell with an editing control is in edit mode.

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

[BrowsableAttribute(false)]
public Control EditingControl { get; }

Property Value

Type: System.Windows.Forms.Control

The Control hosted by the current cell.

If the cell is not in edit mode or the cell type does not accommodate an editing control, this property returns null.

The following code example illustrates how to use this property in an overridden method of a custom cell type. In the example, a reference to the editing control is retrieved, cast to a custom editing control type, and then populated with the current value of the cell.

This example is part of a larger example available in How to: Host Controls in Windows Forms DataGridView Cells.

public override void InitializeEditingControl(int rowIndex, object 
    initialFormattedValue, DataGridViewCellStyle dataGridViewCellStyle)
{
    // Set the value of the editing control to the current cell value.
    base.InitializeEditingControl(rowIndex, initialFormattedValue, 
        dataGridViewCellStyle);
    CalendarEditingControl ctl = 
        DataGridView.EditingControl as CalendarEditingControl;
    // Use the default row value when Value property is null.
    if (this.Value == null)
    {
        ctl.Value = (DateTime)this.DefaultNewRowValue;
    }
    else
    {
        ctl.Value = (DateTime)this.Value;
    }
}

.NET Framework
Available since 2.0
Return to top
Show: