DataGridViewDataErrorEventArgs.ThrowException Özellik

Tanım

Temsilci tamamlandıktan sonra DataGridViewDataErrorEventHandler özel durumun atılıp atılmayacağını belirten bir değer alır veya ayarlar.

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

Özellik Değeri

true özel durum oluşturulmalıdır; aksi takdirde , false. Varsayılan değer: false.

Özel durumlar

Bu özelliği olarak trueException ayarlarken özellik değeri şeklindedirnull.

Örnekler

Aşağıdaki kod örneği, özel durumun atılmaması gerektiğini belirtmek için özelliğinin kullanılmasını ThrowException gösterir. Bu örnek, sınıfa genel bakış konusunda bulunan DataGridViewComboBoxColumn daha büyük bir örneğin parçasıdır.

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

Açıklamalar

özelliği tarafından Exception temsil edilen özel durumla ilgilenmişse DataGridViewDataErrorEventHandler ve özel durumu olayı işleyebilen DataError başka bir DataGridViewDataErrorEventHandler özel duruma yaymak istemiyorsanız bu özelliği false olarak ayarlayın.

Hata ayıklama amacıyla, özel durumu yaymak ve hatanın bağlamı hakkında bilgi için yığın izlemesini incelemek yararlı olabilir.

Şunlara uygulanır

Ayrıca bkz.