如果dataerror,如何通过单击按钮取消编辑datagridview?

时间:2013-10-08 11:07:37

标签: c# winforms datagridview

我有DataGridView和按钮。

DataGridView myDataGridView = new DataGridView();
Button cancelBtn = new Button();

我订阅活动

myDataGridView.DataError += myDataGridView_DataError;
cancelBtn.Click += cancelBtn_Click;

我的事件处理程序

void myDataGridView_DataError(object sender, DataGridViewDataErrorEventArgs e)
{
//show error message
MessageBox.Show(e.Exception.Message);
//set to editing element original value
curRowDataGrid.CancelEdit();
}

void cancelBtn_Click(object sender, EventArgs e)
{
curRowDataGrid.CancelEdit();
//and some specific additional logic
}

但是,如果我点击cancelBtn(如果在点击我写错了值之前)我没有得到事件处理程序cancelBtn_Click,我得到myDataGridView_DataError并留在那里。

我想要遵循以下逻辑:无论我输入什么数据,如果我点击cancelBtn我想要取消取消Btn_Click()。

1 个答案:

答案 0 :(得分:0)

虽然单击了取消按钮,但在取消按钮的单击事件之前,由于您提供的数据错误,页面中的某些未处理的异常可能会导致该请求进入DataError事件处理程序。 更好的是,在代码中实现适当的异常处理,抑制您不想触发的异常。

相关问题