以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [讨论]同样的“保存行”代码,为啥执行结果不一样? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=92088) |
-- 作者:ezgame -- 发布时间:2016/10/25 22:58:00 -- [讨论]同样的“保存行”代码,为啥执行结果不一样? 做了一个主窗口“录入界面”,在所属表“表A”的 BeforeSaveDataRow 事件中写了如下代码做测试: MessageBox.Show(e.DataRow("姓名"))
然后分别通过两种方法添加了保存按钮: 方法1:通过 菜单设计 在功能区-功能组 中添加了一个按钮,click事件添加如下代码: Tables("表A").Current.Save()
方法2:在主窗口“录入界面”上添加一个标准按钮,click事件添加同样的如下代码: Tables("表A").Current.Save()
现在我在主窗口“录入界面”中“姓名”文本框中输入“11”,在焦点不离开姓名文本框的情况下,点击功能区的保存按钮时,MessageBox.Show(e.DataRow("姓名")) 返回的是空值;而点击窗口上的保存按钮时,能正确返回值,即 MessageBox.Show(e.DataRow("姓名")) 返回的是“11”; 如果在姓名文本框中输入“11”后,焦点离开文本框,则此时点击两个保存按钮的结果是一致的,都能正确返回“11”。
请问在焦点不离开文本框的情况下,为什么功能区的保存按钮执行后返回的结果不对呢? |
-- 作者:有点蓝 -- 发布时间:2016/10/25 23:09:00 -- 点击窗口上的保存按钮时焦点离开了文本框,点击功能区的保存按钮时焦点不会离开文本框。只有焦点离开值才会更新 |
-- 作者:ezgame -- 发布时间:2016/10/25 23:13:00 -- 以下是引用有点蓝在2016/10/25 23:09:00的发言:
点击窗口上的保存按钮时焦点离开了文本框,点击功能区的保存按钮时焦点不会离开文本框。只有焦点离开值才会更新 原来如此!那这样的话,保存按钮不宜设计在功能区吗? |
-- 作者:有点蓝 -- 发布时间:2016/10/26 8:35:00 -- 像这种窗口编辑的,还是在窗口保存的好 |