以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 列颜色的问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=100304) |
-- 作者:douglas738888 -- 发布时间:2017/5/9 10:57:00 -- 列颜色的问题 老师,以下代码,想实现的是当加载不同年度的行进来后,根据ComboBox所选择的列名进行该列的颜色标注,不是该年度的列不进行标注(另外一种理解,就是如果标准列里面的列名称不匹配,该列不进行标注颜色)
现在有两个问题: 1. 下列代码已经current了,还是把表中所有年度的该列进行了颜色标注,而不是根据年度标注颜色
2. 如果原来根据ComboBox选择了比如“第一列”已经标注颜色了,现在要选择为“第二列”进行标注,怎样去除“第一列”的颜色
代码:SelectedIndexChanged Dim cmb As WinForm.ComboBox = e.Form.Controls("ComboBox1") |
-- 作者:有点色 -- 发布时间:2017/5/9 11:03:00 -- Dim cmb As WinForm.ComboBox = e.Form.Controls("ComboBox1") For Each c As Col In Tables("总因子").Cols If c.Caption = cmb.Text Then Tables("总因子").grid.Cols(c.name).Style.Backcolor = Color.LimeGreen Else Tables("总因子").grid.Cols(c.name).Style.Backcolor = Color.Transparent End If Next [此贴子已经被作者于2017/5/9 14:26:04编辑过]
|
-- 作者:douglas738888 -- 发布时间:2017/5/9 12:18:00 -- 老师,您指导的代码,颜色没有任何标注 标准列里面的列名和cmb.Text 的列名与表的列名是一致的,没有重复名称
如果换成这样,颜色可以标注,是该列全部标注,cmb.text的列名不同也同样标注了,没有区分,但列名不同的情况下,也不会取消原来的颜色标注 Tables("总因子").grid.Cols(cmb.Text).Style.Backcolor = Color.Transparent
问题可能是,我在SQL SERVER 中设计的列名有[],比如[因子提取_3%],这个的列名在代码中会受影响,老师,这个如何解决? [此贴子已经被作者于2017/5/9 13:42:58编辑过]
|
-- 作者:有点色 -- 发布时间:2017/5/9 14:27:00 -- Dim cmb As WinForm.ComboBox = e.Form.Controls("ComboBox1") For Each c As Col In Tables("总因子").Cols If c.Caption = cmb.Text Then Tables("总因子").grid.Cols(c.name).Style.Backcolor = Color.LimeGreen Else Tables("总因子").grid.Cols(c.name).Style.Backcolor = Color.Transparent End If Next |
-- 作者:有点色 -- 发布时间:2017/5/9 14:28:00 -- 具体问题,做个小例子发上来 |