datagridview_CellValidating事件问题 [英] datagridview_CellValidating event problem

查看:64
本文介绍了datagridview_CellValidating事件问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

private void dgvGroupDet_CellValidating(对象发送者,DataGridViewCellValidatingEventArgs e)
{
如果(dgvGroupDet.Columns [e.ColumnIndex] .Name ==& quot; Name& quot;)
{
如果(String.IsNullOrEmpty(e.FormattedValue.ToString()))
{
dgvGroupDet.Rows [e.RowIndex] .ErrorText =
& quot;名称不能为空& quot ;;
e.Cancel = true;
}
}
}
私有void dgvGroupDet_CellEndEdit(对象发送者,DataGridViewCellEventArgs e)
{
dgvGroupDet.Rows [e.RowIndex] .ErrorText = String.Empty;
}
注意:我正在尝试在datagridview中执行此代码以进行验证,它将可以正常工作,但是由于验证,我无法关闭我的Form.

private void dgvGroupDet_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
if (dgvGroupDet.Columns[e.ColumnIndex].Name == "Name")
{
if (String.IsNullOrEmpty(e.FormattedValue.ToString()))
{
dgvGroupDet.Rows[e.RowIndex].ErrorText =
"Name must not be empty";
e.Cancel = true;
}
}
}
private void dgvGroupDet_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
dgvGroupDet.Rows[e.RowIndex].ErrorText = String.Empty;
}
Note: I m trying to do this code for validation in datagridview it will work complete but due to validation i can''t close my Form.

推荐答案

创建布尔值属性,并将其称为IsClosing,并仅在关闭窗体时将其设置为true.表单的FormClosing事件应该是您将其设置为true的地方.

现在,在CellValidating()事件方法中,检查表单是否正在关闭.如果是这样,只需返回即可.无需验证.

:)
Create a boolean property and call it IsClosing and set it to true ONLY when the form is closing. The FormClosing event of the form should be where you would set it to true.

Now, at the CellValidating() event method, check if the form is closing. If it is, simply return. No need for validation.

:)


这篇关于datagridview_CellValidating事件问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆