Foxtable(狐表)用户栏目专家坐堂 → [求助]AfterCheckRow 事件相关


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

主题:[求助]AfterCheckRow 事件相关

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


加好友 发短信
等级:幼狐 帖子:125 积分:1054 威望:0 精华:0 注册:2012/4/29 14:56:00
[求助]AfterCheckRow 事件相关  发帖心情 Post By:2015/5/23 10:43:00 [只看该作者]

在AfterCheckRow 事件里写了这些代码


If e.Row("调1") = "调出店铺" Then

    e.Table.DataTable.DeleteFor("调1 = '调出店铺'")

    If e.Table.rows.count = 0 Then

        Forms("调拨明细").Visible = False

    End If

End If

If e.Row("调1") = "调入店铺" Then

    e.Row.Delete()

    If e.Table.rows.count = 0 Then

        Forms("调拨明细").Visible = False

    End If

End If




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


加好友 发短信
等级:幼狐 帖子:125 积分:1054 威望:0 精华:0 注册:2012/4/29 14:56:00
  发帖心情 Post By:2015/5/23 10:43:00 [只看该作者]

然后测试 选取e.Row("调1") = "调出店铺" 这样行的复选框,就会有这么个提示:

This row has been removed from a table and does not have any data.  BeginEdit() will allow creation of new data in this row.


说是已经删除了的行什么的。  怎么办? 目的是选取e.Row("调1") = "调出店铺"这样的行后,所有这样的行都删除掉


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/5/23 10:49:00 [只看该作者]

上例子.
我自行测试 

If e.Row("第一列") = "A" Then

    e.Row.Delete()

end if


没有问题,正常运作


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


加好友 发短信
等级:幼狐 帖子:125 积分:1054 威望:0 精华:0 注册:2012/4/29 14:56:00
  发帖心情 Post By:2015/5/23 11:30:00 [只看该作者]

我知道原因了 
第一个条件满足后 已经删除e.row 了
第二个条件要判断的话 就会出错



 回到顶部