以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]数据表内行的颜色  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=68351)

--  作者:cjz7120641
--  发布时间:2015/5/15 10:30:00
--  [求助]数据表内行的颜色
我想请问下狐表的数据表能不能根据表中第一列的内容,相同的一个颜色,下一个不同的就不一样的颜色,就是和交替行颜色差不多的意思,但是比交替行智能点!
就像附件那样根据订单编号同一个订单一个颜色第二个订单另一个颜色第三个订单又是第一个订单的颜色,这样能不能实现?要怎么实现
图片点击可在新窗口打开查看此主题相关图片如下:未标题-1.jpg
图片点击可在新窗口打开查看

--  作者:unverse
--  发布时间:2015/5/15 10:32:00
--  
参考帮助中的DRAWCELL
--  作者:大红袍
--  发布时间:2015/5/15 10:39:00
--  

drawcell事件,代码

 

e.Table.DataTable.AddUserStyle("样式1", color.Red, Color.Black)
e.Table.DataTable.AddUserStyle("样式2", color.blue, Color.Black)

static pys As String = ""
static pr As Row = Nothing
If e.Row.Index = 0 Then
    pys = "样式1"
Else
    If e.Row("第一列") <> pr("第一列") Then
        If pys = "样式1"
            pys = "样式2"
        Else
            pys = "样式1"
        End If
    End If
End If
pr = e.Row
e.Style = pys


--  作者:cjz7120641
--  发布时间:2015/5/15 15:20:00
--  
用了这个代码后 鼠标指针指哪  哪的颜色就变了 到最后就乱了,刚开始还好好的,指针指哪 哪的颜色就变白了 然后下个订单的颜色也变了
--  作者:大红袍
--  发布时间:2015/5/15 16:05:00
--  

 

[此贴子已经被作者于2015/5/15 16:05:20编辑过]

--  作者:大红袍
--  发布时间:2015/5/15 16:06:00
--  

最后加一句代码

 

e.Table.DataTable.AddUserStyle("样式1", color.Red, Color.Black)
e.Table.DataTable.AddUserStyle("样式2", color.blue, Color.Black)

static pys As String = ""
static pr As Row = Nothing
If e.Row.Index = 0 Then
    pys = "样式1"
Else
    If e.Row("第一列") <> pr("第一列") Then
        If pys = "样式1"
            pys = "样式2"
        Else
            pys = "样式1"
        End If
    End If
End If
pr = e.Row
e.Style = pys
e.Table.Refresh


--  作者:cjz7120641
--  发布时间:2015/5/15 16:37:00
--  
谢谢了


--  作者:cjz7120641
--  发布时间:2015/5/15 17:01:00
--  
这个代码也不行啊  一用只要鼠标滚动下 全表都在闪
--  作者:大红袍
--  发布时间:2015/5/15 17:13:00
--  

在 drawcell事件不要写代码 e.Table.Refresh

 

写到 MouseEnterCell 和 AfterScroll