DataGridViewDataErrorEventHandler Delegate

 

Represents the method that will handle the DataError event of a DataGridView.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public delegate void DataGridViewDataErrorEventHandler(
	object sender,
	DataGridViewDataErrorEventArgs e
)

Parameters

sender
Type: System.Object

The source of the event.

e
Type: System.Windows.Forms.DataGridViewDataErrorEventArgs

A DataGridViewDataErrorEventArgs that contains the event data.

The 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).

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 NIB: Events and Delegates.

The following code example demonstrates how to use a DataGridViewDataErrorEventHandler to display information about a DataError in a message box. 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 ((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;
    }
}

.NET Framework
Available since 2.0
Return to top
Show: