Foxtable(狐表)用户栏目专家坐堂 → 合计时,发生了DRAWCELL错误


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

主题:合计时,发生了DRAWCELL错误

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
合计时,发生了DRAWCELL错误  发帖心情 Post By:2015/3/17 9:39:00 [只看该作者]

.NET Framework 版本:2.0.50727.5485
Foxtable 版本:2014.11.11.1
错误所在事件:表,派工表,DrawCell
详细错误信息:
调用的目标发生了异常。
未将对象引用设置到对象的实例。

-----------------

DRAWCELL事件执行错误

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/17 9:40:00 [只看该作者]

 贴出代码


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


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2015/3/17 10:06:00 [只看该作者]

DRAWCELL 事件全部代码:

If e.Row("日期")<Date.Today() AndAlso e.Row.IsNull("日期") = False Then
    e.style="gray"
Else If e.Row.IsNull("日期") = False AndAlso CDate(e.Row("日期")).Day Mod 2 = 1 Then
    e.Style = "yellow"
End If



e.Table.DataTable.AddUserStyle("当前行", Color.Red, Color.black)
If e.Row.Index = e.Table.Current.Index
    e.Style = "当前行"
End If

    If e.Row.IsNull("签约终止日") = False
        If e.Row("签约终止日") < Date.Today.AddDays(14) Then
            e.Style = "red"
        End If
    End If

If e.Row.Isnull("日期") = True AndAlso e.Row.Isnull("客户信息") = False
e.style = "purple"
End If

If e.Row("颜色") = "黄色"
e.style ="黄色"
End If

If e.Row("颜色") = "红色"
e.style ="红色"
End If

If e.Row("颜色") = "蓝色"
e.style ="蓝色"
End If

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


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

If e.Row("日期")<Date.Today() AndAlso e.Row.IsNull("日期") = False Then
    e.style="gray"
Else If e.Row.IsNull("日期") = False AndAlso CDate(e.Row("日期")).Day Mod 2 = 1 Then
    e.Style = "yellow"
End If

红色部分如果日期是空就会报错.

If e.Row("日期")<Date.Today() AndAlso e.Row.IsNull("日期") = False Then
    e.style="gray"
Else If e.Row.IsNull("日期") = False  Then
   if  CDate(e.Row("日期")).Day Mod 2 = 1  then
    e.Style = "yellow"
   end if
End If

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2015/3/17 10:36:00 [只看该作者]

使用你下面给出的代码吗?

If e.Row("日期")<Date.Today() AndAlso e.Row.IsNull("日期") = False Then
    e.style="gray"
Else If e.Row.IsNull("日期") = False  Then
   if  CDate(e.Row("日期")).Day Mod 2 = 1  then
    e.Style = "yellow"
   end if
End If

还是会报错哦。

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


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

建议您用这个方法:
http://www.foxtable.com/help/topics/1485.htm

先找出是哪一行出错,然后分析原因,搞不定,可以在论坛发帖,贴出代码,并告诉我们运行到哪一行出错,以及错误提示。

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/17 11:20:00 [只看该作者]

改一改,不行,就做例子上来

 

e.Table.DataTable.AddUserStyle("当前行", Color.Red, Color.black)
If e.Table.Current IsNot Nothing AndAlso e.Row.Index = e.Table.Current.Index
    e.Style = "当前行"
End If

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2015/3/17 12:03:00 [只看该作者]

好了,谢谢TIANTIAN, 

 回到顶部