以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]如何通过代码标记所选多行的颜色????、、  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=68681)

--  作者:klg1011
--  发布时间:2015/5/22 13:55:00
--  [求助]如何通过代码标记所选多行的颜色????、、
如图,我想实现:
通过点击 全选 ,选中所有行,并且自动标记所选行的颜色,该如何实现呢?

我用下面的代码没有效果!!!!!!!

图片点击可在新窗口打开查看此主题相关图片如下:标记颜色.png
图片点击可在新窗口打开查看
DataTables(e.form.name & "_table1").AddUserStyle("选中", Color.Red, Color.White)


全选按钮
Dim tbl As Table = Tables(e.form.name & "_table1")
For Each dr As Row In tbl.Rows
    dr("_Locked") = True
Next


drawcell代码
Dim tbl As Table = Tables(e.form.name & "_table1")
For Each dr As Row In tbl.Rows
    If dr("_Locked") = True
        e.Style = "选中"
    End If
Next

[此贴子已经被作者于2015/5/22 13:59:13编辑过]

--  作者:klg1011
--  发布时间:2015/5/22 13:59:00
--  
图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看
--  作者:Bin
--  发布时间:2015/5/22 14:02:00
--  
If e.row.Locked= True then
        e.Style = "选中"
end if

只需要这么一小段代码即可.
[此贴子已经被作者于2015/5/22 14:20:39编辑过]

--  作者:大红袍
--  发布时间:2015/5/22 14:07:00
--  

 测试了一下,你代码没什么问题。

 

 试试这样写

 

Dim tbl As Table = Tables(e.form.name & "_table1")
For Each dr As Row In tbl.Rows
    dr("_Locked") = True
Next
tbl.Refresh
 
--------------
 
If e.Row("_Locked") = True
    e.Style = "选中"
End If
 
[此贴子已经被作者于2015/5/22 14:34:14编辑过]

--  作者:狐狸爸爸
--  发布时间:2015/5/22 14:12:00
--  

全选按钮按4楼这样,加个Refresh

至于drawcell事件,请按3楼写。

 


--  作者:klg1011
--  发布时间:2015/5/22 14:17:00
--  
If e.rowLocked= True then
        e.Style = "选中"
end if


rowLocked 在drawcell事件里,不属于e参数。

[此贴子已经被作者于2015/5/22 14:18:33编辑过]

--  作者:狐狸爸爸
--  发布时间:2015/5/22 14:18:00
--  

哥,你漏点了

 

If e.row.Locked= True then
        e.Style = "选中"
end if

--  作者:klg1011
--  发布时间:2015/5/22 14:22:00
--  
图片点击可在新窗口打开查看我以为真有 rowlocked属性呢,,,,不过按狐爸的要求改了,点击 全选,还是没反应。望了说明一点我的table1是sqltable类型。这个有影响吗?


--  作者:大红袍
--  发布时间:2015/5/22 14:30:00
--  

 

[此贴子已经被作者于2015/5/22 14:31:26编辑过]

--  作者:Bin
--  发布时间:2015/5/22 14:33:00
--  
和是否SQLTABLE没有关系的,实在不行你上个例子看看吧