以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  除了drawcell事件外如何给行标记颜色?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=158806)

--  作者:happyft
--  发布时间:2020/12/3 8:52:00
--  除了drawcell事件外如何给行标记颜色?
因为是查询绑定到数据再增加临时列,然后根据这个临时列的值来判断让行显示红色,如果用drawcell事件,在查询绑定时就执行一次,增加临时列时又执行一次会闪屏,如果不通过drawcell事件,想在按钮代码中在查询生成数据增加标记临时列后,再根据标记列的值来设置行的颜色为红色,不用drawcell可以实现吗?如何写?

谢谢!

--  作者:有点蓝
--  发布时间:2020/12/3 9:51:00
--  
http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=134732&skin=0
--  作者:HappyFt
--  发布时间:2020/12/3 10:04:00
--  
这个是设置单元格的颜色,我是要设置整行的颜色,这里要怎么改?
      t.Grid.SetCellStyle(r.Index+t.HeaderRows, 2, cr1)
谢谢!

--  作者:有点蓝
--  发布时间:2020/12/3 10:12:00
--  
遍历整行逐个单元格处理
--  作者:HappyFt
--  发布时间:2020/12/3 10:14:00
--  
那不是效率很低,能否类似这样 tbl.Grid.SetRowStyle(cr1)  
--  作者:有点蓝
--  发布时间:2020/12/3 10:15:00
--  
没有这种用法
--  作者:linyunu
--  发布时间:2021/3/9 15:36:00
--  
Dim t As Table = Tables(TableName)
Dim cr1 As C1.Win.C1FlexGrid.CellStyle = t.Grid.Styles.Add("a")    \' 创建一个新的自定义样式
cr1.BackColor = Color.White
cr1.ForeColor = Color.Red
\'               将新的样式分配到一列。
t.Grid.Cols(3).Style = t.Grid.Styles("a") 
\'               将新的样式分配到一行。
t.Grid.Rows(3).Style = t.Grid.Styles("a") 
\'               将新的样式分配到一个单元格区域。  
Dim rg As C1.Win.C1FlexGrid.CellRange = t.Grid.GetCellRange(4, 4, 6, 6)
rg.Style = t.Grid.Styles("a")