DataGridView.CommitEdit(DataGridViewDataErrorContexts) Metoda

Definice

Potvrdí změny v aktuální buňce do mezipaměti dat bez ukončení režimu úprav.

public bool CommitEdit(System.Windows.Forms.DataGridViewDataErrorContexts context);

Parametry

context
DataGridViewDataErrorContexts

Bitová kombinace DataGridViewDataErrorContexts hodnot, která určuje kontext, ve kterém může dojít k chybě.

Návraty

true byly-li změny potvrzeny; jinak false.

Výjimky

Hodnotu buňky nelze potvrdit a pro událost neexistuje žádná obslužná rutina DataError nebo obslužná rutina nastavila ThrowException vlastnost na true.

Příklady

Následující příklad kódu volá metodu CommitEdit v rámci obslužné CurrentCellDirtyStateChanged rutiny události k vyvolání CellValueChanged události. Tento příklad kódu je součástí většího příkladu v části Postupy: Zakázání tlačítek ve sloupci tlačítka v ovládacím prvku model Windows Forms DataGridView.

// This event handler manually raises the CellValueChanged event
// by calling the CommitEdit method.
void dataGridView1_CurrentCellDirtyStateChanged(object sender,
    EventArgs e)
{
    if (dataGridView1.IsCurrentCellDirty)
    {
        dataGridView1.CommitEdit(DataGridViewDataErrorContexts.Commit);
    }
}

// If a check box cell is clicked, this event handler disables  
// or enables the button in the same row as the clicked cell.
public void dataGridView1_CellValueChanged(object sender,
    DataGridViewCellEventArgs e)
{
    if (dataGridView1.Columns[e.ColumnIndex].Name == "CheckBoxes")
    {
        DataGridViewDisableButtonCell buttonCell =
            (DataGridViewDisableButtonCell)dataGridView1.
            Rows[e.RowIndex].Cells["Buttons"];

        DataGridViewCheckBoxCell checkCell =
            (DataGridViewCheckBoxCell)dataGridView1.
            Rows[e.RowIndex].Cells["CheckBoxes"];
        buttonCell.Enabled = !(Boolean)checkCell.Value;

        dataGridView1.Invalidate();
    }
}

Poznámky

Tato metoda se pokusí převést formátovanou hodnotu zadanou uživatelem na datový typ základní buňky. Za tímto účelem vyvolá CellParsing událost, kterou můžete zpracovat a přizpůsobit převod typu. V opačném případě se použijí výchozí převaděče typů. Chyby převodu můžou vést k výjimce, DataError pokud se událost nezpracuje, aby se tomu zabránilo. Pokud je hodnota úspěšně převedena, je potvrzena v úložišti dat a vyvolá CellValuePushed událost pro buňky nevázané na data, pokud VirtualMode je truehodnota vlastnosti . Pokud je hodnota úspěšně potvrzena, dojde k CellValueChanged události.

Platí pro

Produkt Verze
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Viz také