Foxtable(狐表)用户栏目专家坐堂 → [求助]关于drawcell事件报错


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

主题:[求助]关于drawcell事件报错

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


加好友 发短信
等级:幼狐 帖子:120 积分:900 威望:0 精华:0 注册:2020/2/13 22:59:00
[求助]关于drawcell事件报错  发帖心情 Post By:2025/3/7 23:42:00 [只看该作者]

老师您好,一个主窗口上打开一个模式窗口,放了几个关联的子表在里面,当在给里面的关联表增加行或者删除行时(用按钮+代码增加行或者删除行),偶尔会报错(不是每次都报),提示的是drawcell事件问题,这个是有可能什么情况呢?
drawcell事件只有几行代码:

If e.Row("数量") < 0 Then
    e.Style = "退货"

End If




这些子表与父表的关联列都是一样的;就是说父表的某一列关联着好几个子表;


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112700 积分:573839 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/3/8 9:11:00 [只看该作者]

完整的错误提示文字发上来看看

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


加好友 发短信
等级:幼狐 帖子:120 积分:900 威望:0 精华:0 注册:2020/2/13 22:59:00
  发帖心情 Post By:2025/3/8 9:59:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:删除错误提示.png
图片点击可在新窗口打开查看
也不是每次都会弹出,就是偶尔又有

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


加好友 发短信
等级:幼狐 帖子:120 积分:900 威望:0 精华:0 注册:2020/2/13 22:59:00
  发帖心情 Post By:2025/3/8 10:01:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:错误提示.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:幼狐 帖子:120 积分:900 威望:0 精华:0 注册:2020/2/13 22:59:00
  发帖心情 Post By:2025/3/8 10:03:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:添加错误提示.png
图片点击可在新窗口打开查看

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112700 积分:573839 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/3/8 10:14:00 [只看该作者]

"数量"是字符列?

把drawcell完整代码发上来,发自己真实代码,不要发帮助的代码

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


加好友 发短信
等级:幼狐 帖子:120 积分:900 威望:0 精华:0 注册:2020/2/13 22:59:00
  发帖心情 Post By:2025/3/8 10:49:00 [只看该作者]

if e.Row.Index = -1 then return
If e.Table.Current IsNot Nothing Then
    
    If e.Row("数量") < 0 Then
        e.Style = "退货"
    End If
End if


数量列是双精度小数

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112700 积分:573839 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/3/8 10:53:00 [只看该作者]

去掉其它代码,只保留下面

    If e.Row("数量") < 0 Then
        e.Style = "退货"
    End If

不行再试试
If e.Table.rows.count > 0 Then
    If e.Row("数量") < 0 Then
        e.Style = "退货"
    End If
End if

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


加好友 发短信
等级:幼狐 帖子:120 积分:900 威望:0 精华:0 注册:2020/2/13 22:59:00
  发帖心情 Post By:2025/3/8 11:10:00 [只看该作者]

好的,谢谢蓝老师;
之前就是这样的;

    If e.Row("数量") < 0 Then
        e.Style = "退货"
    End If

我先试试,谢谢哈!

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


加好友 发短信
等级:幼狐 帖子:120 积分:900 威望:0 精华:0 注册:2020/2/13 22:59:00
  发帖心情 Post By:2025/3/8 11:23:00 [只看该作者]

蓝老师,
这种关联表比较多的形式;且都是在同一个窗口里面的TabControl控件里面;
应该对增加行和删除行是没有什么影响的吧?需要注意什么的么?


还有一个问题:

已经做了所有所有表的禁止复制粘贴了,发布以后,还是可以用ctrl+c从表格里面复制出来数据;这种情况应该怎么做才能禁止?
 For Each dt9 As DataTable In DataTables
        dt9.AllowClipBoard = False
    Next
[此贴子已经被作者于2025/3/8 12:28:16编辑过]

 回到顶部
总数 11 1 2 下一页