Sdílet prostřednictvím


DataGridView.BeginEdit(Boolean) Metoda

Definice

Převede aktuální buňku do režimu úprav.

public:
 virtual bool BeginEdit(bool selectAll);
public virtual bool BeginEdit (bool selectAll);
abstract member BeginEdit : bool -> bool
override this.BeginEdit : bool -> bool
Public Overridable Function BeginEdit (selectAll As Boolean) As Boolean

Parametry

selectAll
Boolean

true pro výběr veškerého obsahu buňky; false a nevybírejte žádný obsah.

Návraty

truePokud je aktuální buňka již v režimu úprav nebo úspěšně přejde do režimu úprav; v opačném případě . false

Výjimky

CurrentCell není nastavena na platnou buňku.

-nebo-

Tato metoda byla volána v obslužné rutině CellBeginEdit události.

Typ označený vlastností buňky EditType není odvozen od Control typu .

-nebo-

Typ označený vlastností buňky EditType neimplementuje IDataGridViewEditingControl rozhraní.

Inicializace hodnoty buňky pro úpravy se nezdařila a buď neexistuje žádná obslužná rutina události DataError , nebo obslužná rutina nastavila ThrowException vlastnost na true. Objekt výjimky lze obvykle přetypovat na typ FormatException.

Příklady

Následující příklad kódu ukazuje použití této metody.

// Override OnMouseClick in a class derived from DataGridViewCell to 
// enter edit mode when the user clicks the cell. 
protected override void OnMouseClick(DataGridViewCellMouseEventArgs e)
{
    if (base.DataGridView != null)
    {
        Point point1 = base.DataGridView.CurrentCellAddress;
        if (point1.X == e.ColumnIndex &&
            point1.Y == e.RowIndex &&
            e.Button == MouseButtons.Left &&
            base.DataGridView.EditMode !=
            DataGridViewEditMode.EditProgrammatically)
        {
            base.DataGridView.BeginEdit(true);
        }
    }
}
' Override OnMouseClick in a class derived from DataGridViewCell to 
' enter edit mode when the user clicks the cell. 
Protected Overrides Sub OnMouseClick( _
    ByVal e As DataGridViewCellMouseEventArgs)

    If MyBase.DataGridView IsNot Nothing Then

        Dim point1 As Point = MyBase.DataGridView.CurrentCellAddress
        If point1.X = e.ColumnIndex And _
            point1.Y = e.RowIndex And _
            e.Button = MouseButtons.Left And _
            Not MyBase.DataGridView.EditMode = _
            DataGridViewEditMode.EditProgrammatically Then

            MyBase.DataGridView.BeginEdit(True)

        End If
    End If
End Sub

Poznámky

Tato metoda se vrátí false , pokud se buňce nepodaří přejít do režimu úprav, k čemuž může dojít z několika důvodů. Tato metoda vrátí, false pokud je aktuální buňka jen pro čtení. Vrátí se false také, pokud je null vlastnost buňky EditType (to znamená, že buňka nemůže být hostitelem ovládacího prvku pro úpravy) a typ buňky neimplementuje IDataGridViewEditingCell rozhraní.

Pokud buňka podporuje úpravy, tato metoda vyvolá CellBeginEdit událost, která může být zrušena, a vrátí, false pokud obslužná rutina události zruší úpravy. Pokud není úprava zrušena a buňka může být hostitelem ovládacího prvku pro úpravy, tato metoda inicializuje ovládací prvek a zobrazí jej. Pokud se inicializace nezdaří, vrátí falsetato metoda .

Pokud buňka úspěšně přejde do režimu úprav, IsCurrentCellInEditMode vrátí truevlastnost .

Platí pro

Viz také