以文本方式查看主题 - Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp) -- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2) ---- PrepareEdit事件代码 (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=103677) |
-- 作者:tina2012 -- 发布时间:2017/7/14 10:09:00 -- PrepareEdit事件代码 在PrepareEdit事件中写以下代码: If e.Col.Name = "已到货采购确认" Then If e.Row.Isnull("已到货采购确认") = True Then If _UserName = "采购员1" OrElse _UserName = "采购员2" Then e.Cancel = False Else e.Cancel = True MessageBox.show("非采购人,不允许操作本列内容!", "提示", MessageBoxButtons.OK) Return End If End If End If 如果只点击单元格是没有问题的,但是如果不小心鼠标点击了“已到货采购确认”的列名字位置,如红色框,就会一直弹出"非采购人,不允许操作本列内容!"的信息,不能退出,怎么回事呢?怎么改进为不小心鼠标点击了“已到货采购确认”的列名字位置,不提示任何信息?? 请帮忙解决,谢谢! |
-- 作者:有点甜 -- 发布时间:2017/7/14 10:23:00 -- 在prepareEdit事件,不能写msgbox提示框。
如果要写,要写到startEdit事件去
重要提示:千万不要在PrepareEdit事件显示Messagebox这样的对话框,因为每次进入单元格就会出现提示,这样会导致死循环的出现。 |
-- 作者:tina2012 -- 发布时间:2017/7/14 10:46:00 -- 你好, 写在startEdit事件里,也是同样的问题:
[此贴子已经被作者于2017/7/14 10:46:43编辑过]
|
-- 作者:tina2012 -- 发布时间:2017/7/14 10:51:00 -- 好了,谢谢! |
-- 作者:有点甜 -- 发布时间:2017/7/14 10:53:00 -- 我测试没问题。你prepareEdit事件不能写那段代码,你要删除。
代码写到startEdit事件去。如果还有问题,上传实例说明。 |