以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  两个集合中的值遍历时提示出错  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=23329)

--  作者:zpx_2012
--  发布时间:2012/9/9 9:39:00
--  两个集合中的值遍历时提示出错

各位老师,

 

下面这段代码哪里有错,运行后总是提示如下出错

 


图片点击可在新窗口打开查看此主题相关图片如下:360截图20120909093358185.jpg
图片点击可在新窗口打开查看

 

Dim tr1 As WinForm.TreeView = Forms("单据流程").Controls("TreeView1")
Dim clb As WinForm.CheckedListBox = e.Form.Controls("CheckedListBox1")
\'选取当前目录树中存在的表形成集合
Dim nms As New List(of String)
For Each nd As WinForm.treenode In tr1.nodes
    nms.add(nd.name)
Next
nms.sort()

\'从系统表中选择公开的表形成集合并排序,如果集合中的值不在当前目录树中,则增加形成列表框选项
Dim drs As New List(of DataRow)
drs = DataTables("系统表").Select("公开 = True ")
drs.sort()
For Each dr As DataRow In drs
    Dim s As String = dr("表名")
    If nms.Contains(s)  = false Then
        clb.Items.Add(s)
    End If
Next

 

谢谢!


--  作者:狐狸爸爸
--  发布时间:2012/9/9 9:51:00
--  

去掉这行:

drs.sort()

 


--  作者:程兴刚
--  发布时间:2012/9/9 11:01:00
--  
如果这个事件中的代码中只有这段代码,则要看TreevieW1在设计中是否手工增加了节点,否则,TreeVieW1节点则为空!
[此贴子已经被作者于2012-9-9 11:02:04编辑过]

--  作者:zpx_2012
--  发布时间:2012/9/9 14:07:00
--  
谢谢,真的去掉

drs.sort()

这句就可以了,但是理解不了为什么,狐爸可以解释一下吗?谢谢!

 


--  作者:狐狸爸爸
--  发布时间:2012/9/9 14:53:00
--  

drs不存在排序的说法,你要排序,Select有排序参数:

 

http://www.foxtable.com/help/topics/0400.htm