Foxtable(狐表)用户栏目专家坐堂 → 这种情况怎么处理?(DataRowAdded事件的问题)


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

主题:这种情况怎么处理?(DataRowAdded事件的问题)

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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19403 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2009/11/2 16:34:00 [只看该作者]

以下是引用狐狸爸爸在2009-11-2 16:29:00的发言:
在Fill的时候,不执行DataRowAdded事件算了。

这样最好了。fill只是加载,本身并没有新增行,不执行DataRowAdded事件是理所应当的,而且还能提高加载效率。
这样也不会出现6楼这样莫名其妙的问题了(前3列都不报错,反而提示缺少第4列。还是糊涂。。。)


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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19403 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2009/11/2 16:44:00 [只看该作者]

按照3楼的方法,我把DataRowAdded事件改为:

Dim txt() as String = Forms("选择维护窗口").Controls("Label4").Text.TrimStart("【").TrimEnd("】").Split("-")
Dim r as DataRow = e.DataRow
r("区域") = Trim(txt(0))
r("媒体名称") = Trim(txt(1))
If e.DataTable.Datacols.ConTains("起") Then
    r("起") = Date.Today
    r("止") = Date.Today
End If

单击第一个节点时,正常显示了。再换到其它节点时,却出了这样的错误:

图片点击可在新窗口打开查看此主题相关图片如下:3.jpg
图片点击可在新窗口打开查看

按说,第一次显示正常后,窗口table的表结构已经建立了。再次Fill时,为什么还出错呢?

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


加好友 发短信
等级:管理员 帖子:47449 积分:251065 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/11/2 16:49:00 [只看该作者]

等我关闭Fill时执行DataRowAdded事件再说吧.

或者自己先用一个全局变量做标记,Fill之前将其设为False,Fill之后将其设为True,DataRowAdded则判断其值是否为True再决定是否执行。

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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19403 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2009/11/2 16:54:00 [只看该作者]

以下是引用狐狸爸爸在2009-11-2 16:49:00的发言:
等我关闭Fill时执行DataRowAdded事件再说吧.

或者自己先用一个全局变量做标记,Fill之前将其设为False,Fill之后将其设为True,DataRowAdded则判断其值是否为True再决定是否执行。

好的,我先这样对付一下。
谢谢!


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


加好友 发短信 菜鸟中的老鸟
等级:七尾狐 帖子:1486 积分:10064 威望:0 精华:9 注册:2008/11/14 8:54:00
  发帖心情 Post By:2009/11/2 19:04:00 [只看该作者]

收藏,学习。

 回到顶部
总数 15 上一页 1 2