Foxtable(狐表)用户栏目专家坐堂 → 新版foxtable新增行为何会自动触发DataColChanging事件?


  共有5779人关注过本帖树形打印复制链接

主题:新版foxtable新增行为何会自动触发DataColChanging事件?

帅哥哟,离线,有人找我吗?
yacity
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:532 积分:4020 威望:0 精华:0 注册:2011/6/18 12:41:00
新版foxtable新增行为何会自动触发DataColChanging事件?  发帖心情 Post By:2013/10/16 13:34:00 [只看该作者]

公司的电脑装的是2012版的foxtable。(可能是2011年底的。)

程序也是2011年底设计的。2012年初开始使用至今没有任何问题。最近为了重新设计界面,我把程序拷回家,装上了2013最新的foxtable。

这时候出现了奇怪的问题(程序还没有任何改动)。点击销售开单,新增一行销售记录的时候,竟然会触发DataColChanging事件。 原来2012版的foxtable是不会触发该事件的,麻烦版主帮我看下怎么回事?

具体操作如下:

1、打开程序 2、打开菜单中的“销售信息”3、点击“销售开单”。

这时候会提示“您确定要红冲吗?”


此主题相关图片如下:1.jpg
按此在新窗口浏览图片

 

归根到底就是程序触发了 DataColChanging事件

 

chuhuodan_DataColChanging

 

Select Case e.DataCol.Name

      

Case "hongchong"

 If e.DataRow("hongchong") = False

 

Dim Result As DialogResult

Result = MessageBox.Show("您确定要红冲吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)

If Result = DialogResult.no Then

   

e.Cancel = True

 

End If

 

Else

 

这个事件本应该只有在出货单点红冲的时候才会触发的。


此主题相关图片如下:2.jpg
按此在新窗口浏览图片

 

原来2012老版本的foxtable 在我点击“销售开单”的时候是不会触发该事件的(现在还在用)。

为什么新版foxtable点击“销售开单”会触发DataColChanging,如何解决?

求解。谢谢!
 

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:儋州琼富塑料管理系统1.0sql测试版.table

密码666

 

有一个库存表 kucun 没能拷过来。

 

[此贴子已经被作者于2013-10-16 13:42:34编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3370 积分:24858 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2013/10/16 13:57:00 [只看该作者]

先判断行的状态 通过rowstate排除新增行

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/10/16 14:45:00 [只看该作者]

If e.DataRow("hongchong") = False前加一行 If e.DataRow.isnull("hongchong") = False 然后试试!

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/10/16 15:01:00 [只看该作者]

估计我的方法不行,false实际就是0,不存在null值!

 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/10/16 15:50:00 [只看该作者]

以下是引用程兴刚在2013-10-16 15:01:00的发言:
估计我的方法不行,false实际就是0,不存在null值!

程老师好谦虚,试了你的方法,行!


 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/10/16 15:57:00 [只看该作者]

逻辑列,有三种状态:空、勾、实心。

加上If e.DataRow.isnull("hongchong") = False的判断,实心也没有了。

好奇怪。


 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/10/16 16:39:00 [只看该作者]

哈,我手机回复的,没法测试,也打不开我的已有项目,凭感觉猜的!

 回到顶部
帅哥哟,离线,有人找我吗?
yacity
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:532 积分:4020 威望:0 精华:0 注册:2011/6/18 12:41:00
  发帖心情 Post By:2013/10/16 19:42:00 [只看该作者]

OK!谢谢程老师!

可我还是有点不明白。原来我并没有触发DataColChanging,程序确实也不触发该事件。

可是装了新版的foxtable 为什么新增行就 触发该事件呢?

[此贴子已经被作者于2013-10-16 19:49:21编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
sunsenfeng
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:599 积分:4188 威望:0 精华:0 注册:2011/12/21 11:25:00
  发帖心情 Post By:2013/10/16 19:44:00 [只看该作者]

在Case "hongchong"第一行判断

If e.NewValue=e.Oldvalue Then Return


 回到顶部