DataGridViewCell.EditType Właściwość

Definicja

Pobiera typ kontrolki hostowanej edycji komórki.Gets the type of the cell's hosted editing control.

public:
 virtual property Type ^ EditType { Type ^ get(); };
[System.ComponentModel.Browsable(false)]
public virtual Type EditType { get; }
member this.EditType : Type
Public Overridable ReadOnly Property EditType As Type

Wartość właściwości

Atrybuty

Przykłady

Poniższy przykład kodu demonstruje, jak zastąpić Właściwość EditType w klasie CalendarCell, która pochodzi z DataGridViewTextBoxCell.The following code example demonstrates how to override the EditType property in a CalendarCell class that derives from DataGridViewTextBoxCell. Ten przykład jest częścią większego przykładu kodu podanego w instrukcje: kontrolki hosta w Windows Forms komórkach DataGridView.This example is part of a larger code example provided in How to: Host Controls in Windows Forms DataGridView Cells.

public class CalendarCell : DataGridViewTextBoxCell
{

    public CalendarCell()
        : base()
    {
        // Use the short date format.
        this.Style.Format = "d";
    }

    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;
        }
    }

    public override Type EditType
    {
        get
        {
            // Return the type of the editing control that CalendarCell uses.
            return typeof(CalendarEditingControl);
        }
    }

    public override Type ValueType
    {
        get
        {
            // Return the type of the value that CalendarCell contains.
            
            return typeof(DateTime);
        }
    }

    public override object DefaultNewRowValue
    {
        get
        {
            // Use the current date and time as the default value.
            return DateTime.Now;
        }
    }
}
Public Class CalendarCell
    Inherits DataGridViewTextBoxCell

    Public Sub New()
        ' Use the short date format.
        Me.Style.Format = "d"
    End Sub

    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, _
            dataGridViewCellStyle)

        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)
        Else
            ctl.Value = CType(Me.Value, DateTime)
        End If
    End Sub

    Public Overrides ReadOnly Property EditType() As Type
        Get
            ' Return the type of the editing control that CalendarCell uses.
            Return GetType(CalendarEditingControl)
        End Get
    End Property

    Public Overrides ReadOnly Property ValueType() As Type
        Get
            ' Return the type of the value that CalendarCell contains.
            Return GetType(DateTime)
        End Get
    End Property

    Public Overrides ReadOnly Property DefaultNewRowValue() As Object
        Get
            ' Use the current date and time as the default value.
            Return DateTime.Now
        End Get
    End Property

End Class

Uwagi

Typ komórki pochodnej przesłania tę właściwość w celu zwrócenia typu hostowanej kontrolki edycji.A derived cell type overrides this property to return the type of its hosted editing control. Jeśli komórka nie ma kontrolki edycji, tak jak w przypadku DataGridViewButtonCell, właściwość EditType zwraca null.If the cell does not have an editing control, as with DataGridViewButtonCell, the EditType property returns null.

Dotyczy

Zobacz też