Winforms 当datagridview出现验证错误时关闭win表单
我正在winforms应用程序.net 3.5(VS 2010)中使用类型化数据集。表单具有DataGridView。在FormClosing事件中,我要求用户保存更改。如果用户不想保存,我想让from关闭。但是,当DataGridView出现验证错误时(我在datatables的ColumnChanging事件中验证dataset),表单将不会关闭。即使我没有捕获表单关闭事件,表单也拒绝关闭。我想我必须以某种方式清除datagridvIew中的验证错误。有人能提出解决办法吗Winforms 当datagridview出现验证错误时关闭win表单,winforms,datagridview,typed-dataset,Winforms,Datagridview,Typed Dataset,我正在winforms应用程序.net 3.5(VS 2010)中使用类型化数据集。表单具有DataGridView。在FormClosing事件中,我要求用户保存更改。如果用户不想保存,我想让from关闭。但是,当DataGridView出现验证错误时(我在datatables的ColumnChanging事件中验证dataset),表单将不会关闭。即使我没有捕获表单关闭事件,表单也拒绝关闭。我想我必须以某种方式清除datagridvIew中的验证错误。有人能提出解决办法吗 编辑:还有一个详细
编辑:还有一个详细信息:表单是mdi子表单。不用说,mdi父级也不会关闭。您可以通过将
false
设置为FormClosingEventArgs来覆盖验证并(强制关闭)关闭表单。取消关闭处理程序参数的属性
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
DialogResult res = MessageBox.Show("Close it?", "Close", MessageBoxButtons.YesNo);
if (res == DialogResult.No)
{
e.Cancel = true;
}
else
{
e.Cancel = false;
}
}
好吧,那是我的错。mdi父级有一些mdi子事件的处理程序,但当子窗体关闭时,并非所有处理程序都被删除