以文本方式查看主题

-  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


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


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

最后的显示效果,无论是代码样式还是控件属性样式都没起作用。
[此贴子已经被作者于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中

然后样式设计部分写在项目属性全局表事件中。