Foxtable(狐表)用户栏目专家坐堂 → 自定义样式


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

主题:自定义样式

帅哥哟,离线,有人找我吗?
蓝蚂蚁
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:672 积分:7921 威望:0 精华:0 注册:2016/6/11 11:10:00
自定义样式  发帖心情 Post By:2019/7/30 8:02:00 [只看该作者]

在窗口1中,里面有一个Table1 ,其AfterLoad有如下代码,其作用为:当窗口1加载后,Table1的样式按照代码的意思进行显示。

Dim t As Table = e.form.controls("Table1").Table
If t.Grid.Styles.Normal.Border.Color <> Color.DarkOrange  Then
    t.Grid.Styles.Normal.Border.Color = Color.Black
    t.DataTable.SysStyles("CurrentRow").BackColor = color.GreenYellow
    t.ListMode = True
End If

 

我的问题:当窗口1中有多个副本表时(如、Table2/Table3..........),上面的代码如何修改?谢谢!

 

另外,换一个思路。我想把这段代码做成一个自定义函数(例如名字为:ys),当其他窗口中的副本表需要这个样式时就在窗口的AfterLoad代码中加上:Functions.Execute("ys")

但不知道这个自定义函数如何写?

[此贴子已经被作者于2019/7/30 8:07:53编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

dim tns() as string = {"table1","table2"}
for each tn as string in tns
Dim t As Table = e.form.controls(tn).Table
If t.Grid.Styles.Normal.Border.Color <> Color.DarkOrange  Then
    t.Grid.Styles.Normal.Border.Color = Color.Black
    t.DataTable.SysStyles("CurrentRow").BackColor = color.GreenYellow
    t.ListMode = True
End If
next

函数
dim tn as string = args(0)
Dim t As Table = e.form.controls(tn).Table
If t.Grid.Styles.Normal.Border.Color <> Color.DarkOrange  Then
    t.Grid.Styles.Normal.Border.Color = Color.Black
    t.DataTable.SysStyles("CurrentRow").BackColor = color.GreenYellow
    t.ListMode = True
End If

调用
dim tns() as string = {"table1","table2"}
for each tn as string in tns
    Functions.Execute("ys",tn)
next

 回到顶部
帅哥哟,离线,有人找我吗?
蓝蚂蚁
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:672 积分:7921 威望:0 精华:0 注册:2016/6/11 11:10:00
  发帖心情 Post By:2019/7/30 11:27:00 [只看该作者]

老师好   在定义函数时,提示错误:编译错误:“form”不是“e”的成员;错误代码:Dim t As Table = e.form.controls(tn).Table

 


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111427 积分:567211 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/30 11:34:00 [只看该作者]

函数
dim tn as string = args(0)
dim e = args(1)
Dim t As Table = e.form.controls(tn).Table
If t.Grid.Styles.Normal.Border.Color <> Color.DarkOrange  Then
    t.Grid.Styles.Normal.Border.Color = Color.Black
    t.DataTable.SysStyles("CurrentRow").BackColor = color.GreenYellow
    t.ListMode = True
End If

调用
dim tns() as string = {"table1","table2"}
for each tn as string in tns
    Functions.Execute("ys",tn,e)
next

 回到顶部