以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]窗口listbox控件 items 集合 问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=52594)

--  作者:lfffl
--  发布时间:2014/6/18 19:16:00
--  [求助]窗口listbox控件 items 集合 问题
Dim lb As WinForm.ListBox = e.Form.Controls("ListBox1")
Dim sz(10) As   String
Dim lst As new List(of String)
lst.AddRange(lb.items)
\'For Each aa As String In lb.items
\'lst.Add(aa)
\'Next
sz = lst.ToArray
Dim st As String 
For i As Integer = 0 To sz.Length-1
st=st & "  " & sz(i)
Next
Dim kk As WinForm.TextBox = e.Form.Controls("TextBox1")
kk.text =st

问题:lb.items   不是字符集合吗  为什么字符集合 lst 不能用addrange方法添加lb.items  每次都会报错 只能遍历集合一个一个添加
并且lb.items不能用toarray方法直接赋给数组,这是怎么回事

--  作者:有点甜
--  发布时间:2014/6/18 19:29:00
--  

不明白你的意思,如果要用Addrange,就这样

 

Dim lb As WinForm.ListBox = e.Form.Controls("ListBox1")
Dim sz(10) As   String
Dim lst As new List(of String)
lst.AddRange(lb.Items.ToArray)
\'For Each aa As String In lb.items
\'lst.Add(aa)
\'Next
sz = lst.ToArray
Dim st As String
For i As Integer = 0 To sz.Length-1
    st=st & "  " & sz(i)
Next
Dim kk As WinForm.TextBox = e.Form.Controls("TextBox1")
kk.text =st


--  作者:有点甜
--  发布时间:2014/6/18 19:31:00
--  

 不知道你为什么要这样做。是不是这个目的?

 

Dim lb As WinForm.ListBox = e.Form.Controls("ListBox1")
Dim kk As WinForm.TextBox = e.Form.Controls("TextBox1")
kk.text = lb.ComboList.Replace("|", " ")


--  作者:lfffl
--  发布时间:2014/6/18 19:55:00
--  
我刚开始学习 自己随便练习下  
lst.AddRange(lb.Items.ToArray)代码还是通不过  lst.AddRange(这里不是填集合吗)  lb.items就是字符集合啊  

--  作者:有点甜
--  发布时间:2014/6/18 20:11:00
--  

  看了,lb.Items 定义的不是string的集合,所以不能这样用。

 

Dim lb As WinForm.ListBox = e.Form.Controls("ListBox1")
Dim lst As new List(of Object)
lst.Add(lb.items)

 


--  作者:lfffl
--  发布时间:2014/6/18 20:31:00
--  
原来如此,虽然lb.items. 按tab键后代码精灵提示界面 和 string集合的变量提示界面是一样的    但其定义并不是真正的字符集合