vb.net学习总结三(DropDownList 中 添加 StringIntObject 对象的原理)

来源:互联网 发布:登录界面模板带源码 编辑:程序博客网 时间:2024/06/07 22:54

ComboBox控件是组合框控件。如果将 其 DropDownStyle 设置成 DropDownList 那么它就变成了下拉列表框。下拉列表的每一个项,一般包括两个部分:

text   和  data

text 就是我们看到的列表中的显示数据,data 就是包含在列表中,但是我们看不到的东东。

比如有一个列表是选择 省份 ,虽然我们看到的是 吉林 辽宁 ……

但是我们在程序中一般会读取他的data,也就是省份的代码。

但是我们不能直接 为 list 分别赋 text 和 data 的值。

为了解决这个问题我们需要定义一个类。这个类包括两个成员,分别 代表 text 和 data

类如下:

''' <summary>
'
''  此类定义 DropDownList 控件中的对象。
'
'' </summary>
'
'' <remarks></remarks>
Friend Class StringIntObject
    
Public s As String
    
Public i As Integer

    
Public Sub New(ByVal sz As StringByVal n As Integer)
        s 
= sz
        i 
= n
    
End Sub


    
Public Overrides Function ToString() As String
        
Return s
    
End Function

End Class

请注意其重写了 ToString 方法,为什么要重写他呢?因为当我们将一个StringIntObject 对象 放到 列表框中后,他会把 ToString 的结果显示出来。我们便 重写 ToString 方法,让其返回我们想显示在界面上的信息。 

向列表中添加一个项的方法如下:

 

'lsbUserList 为一个 DropDownList 控件 
Dim uItem As StringIntObject
 uItem 
= New StringIntObject("吉林省"1)
lsbUserList.Items.Add(uItem)
 uItem 
= New StringIntObject("辽宁省"2)
lsbUserList.Items.Add(uItem)
 uItem 
= New StringIntObject("广东省"3)
lsbUserList.Items.Add(uItem)

 

获得用户选择项的方法:

 

Dim i As Integer 
i
=CType(lsbUserList.SelectedItem, StringIntObject).i
dim s as integer
s
=CType(lsbUserList.SelectedItem, StringIntObject).s

本文作者:northsnow(塞北的雪)

原创粉丝点击