以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 如何设置临时表的单元格样式? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=107370) |
-- 作者:huangxueyao -- 发布时间:2017/9/26 19:36:00 -- 如何设置临时表的单元格样式? 如题,在窗体中DataTableBuilder创建的临时表,绑定到table控件,如何通过代码来设置其单元格样式? 或者通过判断某个字段的值来设置行的背景色
|
-- 作者:有点蓝 -- 发布时间:2017/9/26 20:52:00 -- 到全局表事件drawcell写代码,方法一样,判断一下表名称即可 |
-- 作者:huangxueyao -- 发布时间:2017/9/27 9:22:00 -- 全局表事件: For Each dt As DataTable In DataTables dt.GlobalHandler.DrawCell = True Next Select Case e.Table.Name Case "副-分拣操作窗2_table1" DataTables("分拣物料表").AddUserStyle("a", Color.Red , Color.black) DataTables("分拣物料表").AddUserStyle("b", Color.SkyBlue , Color.black) DataTables("分拣物料表").AddUserStyle("c", Color.GreenYellow, Color.black) If e.Row("分拣状态") = "尚未分拣" Then e.Style = "a" ElseIf e.Row("分拣状态") = "部分分拣" Then e.Style = "b" ElseIf e.Row("分拣状态") = "分拣完成" Then e.Style = "c" End If Case "副-分拣操作窗2_table2" DataTables("分拣客户表").AddUserStyle("a", Color.Red , Color.black) DataTables("分拣客户表").AddUserStyle("b", Color.SkyBlue , Color.black) DataTables("分拣客户表").AddUserStyle("c", Color.GreenYellow, Color.black) If e.Row("分拣状态") = "尚未分拣" Then e.Style = "a" ElseIf e.Row("分拣状态") = "部分分拣" Then e.Style = "b" ElseIf e.Row("分拣状态") = "分拣完成" Then e.Style = "c" End If End Select 最后的显示效果,无论是代码样式还是控件属性样式都没起作用。
[此贴子已经被作者于2017/9/27 9:23:54编辑过]
|
-- 作者:有点甜 -- 发布时间:2017/9/27 9:52:00 -- 窗口表的全局表事件,必须在窗口的AfterLoad事件开启。你在项目启动的时候开启无效,因为那时窗口表没生成。 |
-- 作者:有点甜 -- 发布时间:2017/9/27 9:53:00 -- 至于属性设置的问题,你要用代码进行设置才行
http://www.foxtable.com/webhelp/scr/1577.htm
|
-- 作者:huangxueyao -- 发布时间:2017/9/27 10:58:00 -- 总结: For Each dt As DataTable In DataTables dt.GlobalHandler.DrawCell = True Next 这部分写在afterload中 然后样式设计部分写在项目属性全局表事件中。
|