以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  保存修改按钮加入一个验证内容  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=84206)

--  作者:scofields
--  发布时间:2016/4/25 23:26:00
--  保存修改按钮加入一个验证内容
狐爸爸,我有一个困惑,我在表的属性PrepareEdit属性里加入了一个代码如下:(用于控制
e.Cancel = true------数据通过窗口录入
If e.Row("状态") ="制单中" Then 
    e.Cancel = False------------------如果列数据=“制单中”,就可以编辑数据,否则就不行
Else
MessageBox.Show("已生效的计划单不能再更改", "提示", MessageBoxButtons.YesNo)
End If”。
我发现受e.cance=true属性的约束,我点击行记录时,直接就弹出一个上面的对话框,但当我在窗口里的TextBOX框输入数据时,就没有这个对话框,我记得在帮助文件提及“千万不要再PrepareEdit”加入对话框,我想把这个对话框的效果放到我的“保存修改”按钮,一旦row("状态")=“已生效”,窗口里的所有TextBox都变成不可灰色不可输入状态。
[此贴子已经被作者于2016/4/25 23:26:32编辑过]

--  作者:Hyphen
--  发布时间:2016/4/26 8:37:00
--  
如果不想输入,保存后设置锁定状态即可。
底色要另外用代码设置

PrepareEdit
If e.Row("状态") <>"制单中" Then 
    e.Cancel = true------数据通过窗口录入
End If

--  作者:大红袍
--  发布时间:2016/4/26 9:13:00
--  

1、PrepareEdit事件不能写msgbox代码,要写,你也要写到startEdit里面去;

 

2、窗口的权限,你需要到窗口去控制 http://www.foxtable.com/help/topics/2342.htm