DataGridViewDataErrorEventHandler 代理人

定義

DataErrorDataGridView イベントを処理するメソッドを表します。Represents the method that will handle the DataError event of a DataGridView.

public delegate void DataGridViewDataErrorEventHandler(System::Object ^ sender, DataGridViewDataErrorEventArgs ^ e);
public delegate void DataGridViewDataErrorEventHandler(object sender, DataGridViewDataErrorEventArgs e);
type DataGridViewDataErrorEventHandler = delegate of obj * DataGridViewDataErrorEventArgs -> unit
Public Delegate Sub DataGridViewDataErrorEventHandler(sender As Object, e As DataGridViewDataErrorEventArgs)

パラメーター

sender
Object

イベントのソース。The source of the event.

e
DataGridViewDataErrorEventArgs

イベント データを格納している DataGridViewDataErrorEventArgsA DataGridViewDataErrorEventArgs that contains the event data.

継承
DataGridViewDataErrorEventHandler

次のコード例は、を使用DataGridViewDataErrorEventHandlerして、 DataErrorメッセージボックスにに関する情報を表示する方法を示しています。The following code example demonstrates how to use a DataGridViewDataErrorEventHandler to display information about a DataError in a message box. このコードは、 DataGridViewComboBoxColumnクラスの概要に関するトピックで説明されている大規模な例の一部です。This code is part of a larger example provided 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

注釈

イベントは、データバインドDataGridView内のデータ処理操作中にエラーが発生した場合に発生します (たとえば、フォーマットまたは解析操作によって例外がスローされた場合や、データソースの更新が失敗した場合など)。 DataErrorThe DataError event is raised when an error occurs during a data processing operation in a data-bound DataGridView (for example, when a format or parse operation throws an exception or the update of the data source fails).

DataGridViewDataErrorEventHandler デリゲートを作成する場合は、イベントを処理するメソッドを指定します。When you create a DataGridViewDataErrorEventHandler delegate, you identify the method that will handle the event. イベントをイベント ハンドラーに関連付けるには、デリゲートのインスタンスをイベントに追加します。To associate the event with your event handler, add an instance of the delegate to the event. デリゲートを削除しない限り、そのイベントが発生すると常にイベント ハンドラーが呼び出されます。The event handler is called whenever the event occurs, unless you remove the delegate. イベントハンドラーデリゲートの詳細については、「イベントの処理と発生」を参照してください。For more information about event-handler delegates, see Handling and Raising Events.

拡張メソッド

GetMethodInfo(Delegate)

指定したデリゲートによって表されるメソッドを表すオブジェクトを取得します。Gets an object that represents the method represented by the specified delegate.

適用対象

こちらもご覧ください