DataGridView.EditingControl Property


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)

Public ReadOnly Property EditingControl As Control

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 Overrides Sub InitializeEditingControl(ByVal rowIndex As Integer, _
    ByVal initialFormattedValue As Object, _
    ByVal dataGridViewCellStyle As DataGridViewCellStyle)

    ' Set the value of the editing control to the current cell value.
    MyBase.InitializeEditingControl(rowIndex, initialFormattedValue, _

    Dim ctl As CalendarEditingControl = _
        CType(DataGridView.EditingControl, CalendarEditingControl)

    ' Use the default row value when Value property is null.
    If (Me.Value Is Nothing) Then
        ctl.Value = CType(Me.DefaultNewRowValue, DateTime)
        ctl.Value = CType(Me.Value, DateTime)
    End If
End Sub

.NET Framework
Available since 2.0
Return to top