以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]狐爸请进,关于行集合的问题,困扰多时。 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=17550) |
-- 作者:casper -- 发布时间:2012/3/16 13:35:00 -- [求助]狐爸请进,关于行集合的问题,困扰多时。 这样定义行集合为什么不行?
Dim rs As List(Of row)=Tables("订单").rows
提示类型转换错误
另外,Table("订单")表的ShowCheckBox的逻辑属性,设为True,将在行号列显示复选框,只有GetCheckedRows方法,可以获得一个Row类型的集合,该集合包括所有复选框已经选中的行。但是我想删除未选中的行,如果处理?我有下面代码会出现有的未选中行没有删除。
For Each r As Row In Tables("订单").Rows
[此贴子已经被作者于2012-3-16 13:36:40编辑过]
|
-- 作者:casper -- 发布时间:2012/3/16 16:30:00 -- 求助,再顶一下! |
-- 作者:hhbb -- 发布时间:2012/3/16 16:35:00 -- 不要鑽牛角尖,集合一般都有條件,Tables("订单").rows不能指定條件! Dim drs As List(Of Datarow)=DaTables("订单").Select("A >\'\'")
|
-- 作者:czy -- 发布时间:2012/3/17 0:43:00 -- 我觉得楼主的似乎也有道理,因为现在只能操作选中的行,而不能操作没有选中的行。 表属性中并没有显示复选框的选项,因此如果想要出现复选框必定是用ShowCheckBox方法,执行此方法后选择的复选框的值也不能保存到下一次,所以每次处理时只对需要处理的行来选择再操作就不会出现困惑了。
当然如果有这样的方法来处理未选中的行就更好了。 |
-- 作者:casper -- 发布时间:2012/3/17 8:35:00 -- C版真是一语中的啊!我现在只能采取迂回的办法,把复选框反向操作一下,再用 GetCheckedRows。 |
-- 作者:hhbb -- 发布时间:2012/3/17 10:19:00 -- 不知是否存在[RowID/CheckBox]列,如有好辦,或增加GetCheckedRows()的反集合Not GetCheckedRows() |
-- 作者:lxl -- 发布时间:2012/3/17 16:35:00 -- 1、 Dim rs As List(Of Row)= New List(Of Row)(Tables("表A").Rows()) 不过Tables.Rows返回的类型是RowCollection 也是一种集合 可以直接for each进行遍历,没有必要转成List
2、删除集合一般都反过来删 For i As Integer = Tables("表A").Rows.Count - 1 To 0 Step -1 |