DataGridViewDataErrorEventArgs.ThrowException Eigenschaft

Definition

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.Gets or sets a value indicating whether to throw the exception after the DataGridViewDataErrorEventHandler delegate is finished with it.

public:
 property bool ThrowException { bool get(); void set(bool value); };
public bool ThrowException { get; set; }
member this.ThrowException : bool with get, set
Public Property ThrowException As Boolean

Eigenschaftswert

true, wenn die Ausnahme ausgelöst werden soll, andernfalls false.true if the exception should be thrown; otherwise, false. Die Standardeinstellung ist false.The default is false.

Ausnahmen

Beim Festlegen dieser Eigenschaft auf true ist der Exception-Eigenschaftswert null.When setting this property to true, the Exception property value is null.

Beispiele

Im folgenden Codebeispiel wird die Verwendung ThrowException der-Eigenschaft veranschaulicht, um anzugeben, dass die Ausnahme nicht ausgelöst werden soll.The following code example demonstrates using the ThrowException property to indicate that the exception should not be thrown. Dieses Beispiel ist Teil eines größeren Beispiels, das im Thema DataGridViewComboBoxColumn Übersicht über die Klasse verfügbar ist.This example is part of a larger example available in the DataGridViewComboBoxColumn class overview topic.

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

Legen Sie diese Eigenschaft false auf fest DataGridViewDataErrorEventHandler , wenn die die durch die Exception -Eigenschaft dargestellte Ausnahme behandelt hat und Sie die Ausnahme nicht an eine andere DataGridViewDataErrorEventHandler weitergeben möchten, DataError die das-Ereignis behandeln kann.Set this property to false if the DataGridViewDataErrorEventHandler has dealt with the exception represented by the Exception property, and you do not want to propagate the exception to another DataGridViewDataErrorEventHandler that may handle the DataError event.

Zu Debuggingzwecken kann es hilfreich sein, die Ausnahme zu übertragen und die Stapel Überwachung auf Informationen über den Kontext des Fehlers zu überprüfen.For debugging purposes, it can be useful to propagate the exception and inspect the stack trace for information regarding the context of the error.

Gilt für:

Siehe auch