c# DataGridView 单元格 焦点锁定后,输入正确也无法退出,怎么解决?
privatevoidshoplistGridView_CellValidating_1(objectsender,DataGridViewCellValidatingE...
private void shoplistGridView_CellValidating_1(object sender, DataGridViewCellValidatingEventArgs e){
if (Convert.ToInt32(shoplistGridView.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()) < 1)
{
e.Cancel = true;
MessageBox.Show("不能少于1个");
}
else
{
e.Cancel = false;
//。。。
}
}
当输入数量小于1个的时候,锁定焦点在这个单元格中,可是输入大于1的数字后,依然弹出提示,陷入了死循环,怎么办?
怎么改能执行到else部分带代码,跳出提示? 展开
if (Convert.ToInt32(shoplistGridView.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()) < 1)
{
e.Cancel = true;
MessageBox.Show("不能少于1个");
}
else
{
e.Cancel = false;
//。。。
}
}
当输入数量小于1个的时候,锁定焦点在这个单元格中,可是输入大于1的数字后,依然弹出提示,陷入了死循环,怎么办?
怎么改能执行到else部分带代码,跳出提示? 展开
展开全部
Convert.ToInt32(shoplistGridView.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString())
设断点,看这值得出来是多少
设断点,看这值得出来是多少
追问
是这样的,在网上查过,用validated容易进入死循环,我是想知道怎么跳出来,因为即便我把值改为>1,但是它还是验证之前的值,也就是说,只要我把值编辑为<1的数,它就陷入死循环,他就提示不正确,但是,我必须让验证在我输入之后验证。
还有,我现在只知道CellValidating有锁定焦点,这一事件,还有什么别的时间有锁定焦点这一功能吗?
追答
可否加return?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询