日期:2014-05-19  浏览次数:20840 次

问个比较头疼的问题
我现在是要   把数据填充到listbox里  
  现在的情况是我可以把数据库的数据绑定到里面去
  但是我要修改listbox的话   就不行了
  有的人说去修改ds   我感觉这样太麻烦
 
  但是咱们可以换一个思路   那就是   不用绑定的方法来   初始化   listbox  
  但是这样的我只是找到了能填充的办法   那就是listbox1.Item.add();这样的  
  但是这样又少了   我要隐藏的value
  请问我该怎么办?

------解决方案--------------------
在模块中加入类:(自己转c#)
Public Class LbItems
Private DisplayMember As String
Private ValueMember As Object

Public Sub New(ByVal [Text] As String, ByVal Value As Object)
DisplayMember = [Text]
ValueMember = Value
End Sub

Public ReadOnly Property Value() As Object
Get
Return ValueMember
End Get
End Property

Public Overrides Function ToString() As String
Return DisplayMember
End Function
End Class
---------------------------------------------
添加:
listbox1.Item.Add(new LbItems(ds.tables(0).row(0)( "Name "),ds.tables(0).row(0)( "Value ")));
取值:
((LbItems)listbox1.SelectItem).ToString
((LbItems)listbox1.SelectItem).Value