Foxtable(狐表)用户栏目专家坐堂 → [求助]设置交替行后绘制不会显示


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

主题:[求助]设置交替行后绘制不会显示

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


加好友 发短信
等级:童狐 帖子:266 积分:2150 威望:0 精华:0 注册:2012/3/28 16:49:00
[求助]设置交替行后绘制不会显示  发帖心情 Post By:2021/7/2 20:18:00 [只看该作者]


老师您好!
我在表中设置了交替行,也设置了绘制单元格(DrawCell)在有颜色的行绘制就显示不出来。 
代码如下:
If e.Col.Name = "超期天数" AndAlso e.Row.IsNull("超期天数") = False Then
    e.StartDraw()
    Dim Width As Integer = (e.Width - 2 )* e.Row("超期天数") \ 60
If e.Row("超期天数") > 0 Then
    e.Graphics.FillRectangle(Brushes.Red,e.x + 1,e.y + 1, Width, e.Height - 2)
End If
    e.EndDraw()
End If
If e.Col.Name = "超期天数" AndAlso e.Row.IsNull("超期天数") = False Then
    e.StartDraw()
    Dim Width As Integer = (e.Width - 2 )* e.Row("超期天数") \ -60
    If e.Row("超期天数") <= 0 Then
        e.Graphics.FillRectangle(Brushes.Green,e.x + 1,e.y +1, Width, e.Height - 2)
    End If
    e.EndDraw()
End If

是不是图层的问题,能不能把绘制设置在顶层?请老师指教一下,谢谢!
下面是两种效果

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20210702200849.png
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20210702201043.png
图片点击可在新窗口打开查看


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


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

不要使用样式,自己在drawcell绘制交替行

Dim i As Integer = e.Row.Index Mod 2

If e.Col.Name = "超期天数" AndAlso e.Row.IsNull("超期天数") = False Then
    e.StartDraw()
    Dim Width As Integer = (e.Width - 2 )* e.Row("超期天数") \ 60
If e.Row("超期天数") > 0 Then
    e.Graphics.FillRectangle(Brushes.Red,e.x + 1,e.y + 1, Width, e.Height - 2)
End If
    e.EndDraw()
elseif i=1 then
e.style = "样式1"
End If

 回到顶部