DataGridViewDataErrorEventArgs Klasse

Definition

Stellt Daten für das DataError-Ereignis bereit.

public ref class DataGridViewDataErrorEventArgs : System::Windows::Forms::DataGridViewCellCancelEventArgs
public class DataGridViewDataErrorEventArgs : System.Windows.Forms.DataGridViewCellCancelEventArgs
type DataGridViewDataErrorEventArgs = class
    inherit DataGridViewCellCancelEventArgs
Public Class DataGridViewDataErrorEventArgs
Inherits DataGridViewCellCancelEventArgs
Vererbung

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie auf informationen reagiert wird, die von der DataGridViewDataErrorEventArgs -Klasse bereitgestellt werden. Dieses Beispiel ist Teil eines größeren Beispiels, das DataGridViewComboBoxColumn im Thema Klassenübersicht verfügbar ist.

private:
    void DataGridView1_DataError(Object^ sender, DataGridViewDataErrorEventArgs^ anError)
    {

        MessageBox::Show("Error happened " + anError->Context.ToString());

        if (anError->Context == DataGridViewDataErrorContexts::Commit)
        {
            MessageBox::Show("Commit error");
        }
        if (anError->Context == DataGridViewDataErrorContexts::CurrentCellChange)
        {
            MessageBox::Show("Cell change");
        }
        if (anError->Context == DataGridViewDataErrorContexts::Parsing)
        {
            MessageBox::Show("parsing error");
        }
        if (anError->Context == DataGridViewDataErrorContexts::LeaveControl)
        {
            MessageBox::Show("leave control error");
        }

        if (dynamic_cast<ConstraintException^>(anError->Exception) != nullptr)
        {
            DataGridView^ view = (DataGridView^)sender;
            view->Rows[anError->RowIndex]->ErrorText = "an error";
            view->Rows[anError->RowIndex]->Cells[anError->ColumnIndex]->ErrorText = "an error";

            anError->ThrowException = false;
        }
    }
private void DataGridView1_DataError(object sender, DataGridViewDataErrorEventArgs anError)
{

    MessageBox.Show("Error happened " + anError.Context.ToString());

    if (anError.Context == DataGridViewDataErrorContexts.Commit)
    {
        MessageBox.Show("Commit error");
    }
    if (anError.Context == DataGridViewDataErrorContexts.CurrentCellChange)
    {
        MessageBox.Show("Cell change");
    }
    if (anError.Context == DataGridViewDataErrorContexts.Parsing)
    {
        MessageBox.Show("parsing error");
    }
    if (anError.Context == DataGridViewDataErrorContexts.LeaveControl)
    {
        MessageBox.Show("leave control error");
    }

    if ((anError.Exception) is ConstraintException)
    {
        DataGridView view = (DataGridView)sender;
        view.Rows[anError.RowIndex].ErrorText = "an error";
        view.Rows[anError.RowIndex].Cells[anError.ColumnIndex].ErrorText = "an error";

        anError.ThrowException = false;
    }
}
Private Sub DataGridView1_DataError(ByVal sender As Object, _
ByVal e As DataGridViewDataErrorEventArgs) _
Handles DataGridView1.DataError

    MessageBox.Show("Error happened " _
        & e.Context.ToString())

    If (e.Context = DataGridViewDataErrorContexts.Commit) _
        Then
        MessageBox.Show("Commit error")
    End If
    If (e.Context = DataGridViewDataErrorContexts _
        .CurrentCellChange) Then
        MessageBox.Show("Cell change")
    End If
    If (e.Context = DataGridViewDataErrorContexts.Parsing) _
        Then
        MessageBox.Show("parsing error")
    End If
    If (e.Context = _
        DataGridViewDataErrorContexts.LeaveControl) Then
        MessageBox.Show("leave control error")
    End If

    If (TypeOf (e.Exception) Is ConstraintException) Then
        Dim view As DataGridView = CType(sender, DataGridView)
        view.Rows(e.RowIndex).ErrorText = "an error"
        view.Rows(e.RowIndex).Cells(e.ColumnIndex) _
            .ErrorText = "an error"

        e.ThrowException = False
    End If
End Sub

Hinweise

Mit der Behandlung des DataError Ereignisses können Sie Ausnahmen behandeln, die von Code außerhalb Ihres Steuerelements ausgelöst werden (z. B. von einer externen Datenquelle). Verwenden Sie die Context -Eigenschaft, um den Zustand von zum DataGridView Zeitpunkt der Ausnahme zu bestimmen. Verwenden Sie die Exception -Eigenschaft, um die Ausnahmedaten abzurufen. Wenn Sie die Ausnahme durch zusätzliche Ereignishandler behandeln möchten, legen Sie die ThrowException -Eigenschaft auf fest true.

Die ColumnIndex Eigenschaften und RowIndex geben normalerweise die Zelle an, in der der Datenfehler aufgetreten ist. Wenn der Fehler jedoch in einer externen Datenquelle auftritt, stellt die Datenquelle möglicherweise nicht die Spalte bereit, in der der Fehler aufgetreten ist. In diesem Fall gibt die ColumnIndex -Eigenschaft in der Regel die Spalte der aktuellen Zelle zum Zeitpunkt des Fehlers an.

Konstruktoren

DataGridViewDataErrorEventArgs(Exception, Int32, Int32, DataGridViewDataErrorContexts)

Initialisiert eine neue Instanz der DataGridViewDataErrorEventArgs-Klasse.

Eigenschaften

Cancel

Ruft einen Wert ab, der angibt, ob das Ereignis abgebrochen werden soll, oder legt diesen fest.

(Geerbt von CancelEventArgs)
ColumnIndex

Ruft den Spaltenindex der Zelle ab, für die das Ereignis eintritt.

(Geerbt von DataGridViewCellCancelEventArgs)
Context

Ruft Details über den Zustand ab, in dem sich die DataGridView beim Auftreten des Fehlers befand.

Exception

Ruft die Ausnahme ab, die den Fehler darstellt.

RowIndex

Ruft den Zeilenindex der Zelle ab, für die das Ereignis eintritt.

(Geerbt von DataGridViewCellCancelEventArgs)
ThrowException

Ruft einen Wert ab, der angibt, ob die die Ausnahme ausgelöst werden soll, nachdem der DataGridViewDataErrorEventHandler-Delegat seine Aktion beendet hat, oder legt diesen fest.

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für:

Weitere Informationen