❮ 上一节
下一节 ❯
VB.Net - ListBox 列表框控件
ListBox 代表一个向用户显示项目列表的 Windows 控件。 用户可以从列表中选择一个项目。 它允许程序员在设计时使用属性窗口或在运行时添加项目。
让我们通过从工具箱中拖动 ListBox 控件并将其放到窗体上来创建一个列表框。
您可以从属性窗口或在运行时填充列表框项目。 要将项目添加到列表框,请选择列表框控件并进入属性窗口,了解该控件的属性。 单击 Items 属性旁边的省略号 (...) 按钮。 这将打开"字符串集合编辑器"对话框,您可以在其中一行输入一个值。
列表框控件的属性
以下是ListBox控件的一些常用属性 −
序号
属性 &描述
1
AllowSelection
获取一个值,该值指示 ListBox 当前是否允许选择列表项。
2
BorderStyle
获取或设置列表框周围绘制的边框类型。
3
ColumnWidth
获取设置多列列表框中的列宽度。
4
HorizontalExtent
获取或设置列表框的水平滚动区域。
5
HorizontalScrollBar
获取或设置列表框中是否显示水平滚动条的值。
6
ItemHeight
获取或设置列表框中项目的高度。
7
Items
获取列表框的项目。
8
MultiColumn
获取或设置一个值,指示列表框是否支持多列。
9
ScrollAlwaysVisible
获取或设置一个值,指示是否始终显示垂直滚动条。
10
SelectedIndex
获取或设置列表框中当前所选项目的从零开始的索引。
11
SelectedIndices
获取一个集合,其中包含列表框中当前选定的所有项目的从零开始的索引。
12
SelectedItem
获取或设置列表框中当前选定的项目。
13
SelectedItems
获取包含列表框中当前所选项目的集合。
14
SelectedValue
获取或设置由 ValueMember 属性指定的成员属性的值。
15
SelectionMode
获取或设置在列表框中选择项目的方法。 该属性有值 −
None
One
MultiSimple
MultiExtended
16
Sorted
获取或设置一个值,该值指示列表框中的项目是否按字母顺序排序。
17
Text
获取或搜索列表框中当前所选项目的文本。
18
TopIndex
获取或设置列表框第一个可见项的索引。
列表框控件的方法
以下是ListBox控件的一些常用方法 −
序号
方法名称 & 描述
1
BeginUpdate
在调用 EndUpdate 方法之前阻止控件进行绘制,同时将项目一次添加到 ListBox 中。
2
ClearSelected
取消选择列表框中的所有项目。
3
EndUpdate
在被 BeginUpdate 方法关闭后恢复列表框的绘制。
4
FindString
查找列表框中以指定为参数的字符串开头的第一项。
5
FindStringExact
查找 ListBox 中与指定字符串完全匹配的第一项。
6
GetSelected
返回一个值,指示是否选择了指定的项目。
7
SetSelected
选择或清除列表框中指定项目的选择。
8
OnSelectedIndexChanged
引发 SelectedIndexChanged 事件。
8
OnSelectedValueChanged
引发 SelectedValueChanged 事件。
列表框控件的事件
以下是ListBox控件的一些常用事件 −
序号
事件 & 描述
1
Click
选择列表框时发生。
2
SelectedIndexChanged
当列表框的 SelectedIndex 属性更改时发生。
有关 ListBox 控件的属性、方法和事件的详细列表,请参阅 Microsoft 文档。
示例 1
在下面的示例中,让我们在设计时添加一个列表框,并在运行时在其上添加项目。
请执行以下步骤 −
将两个标签、一个按钮和一个列表框控件拖放到窗体上。
设置第一个标签的 Text 属性以提供标题"选择您最喜欢的高等教育目的地"。
设置第二个标签的 Text 属性以提供标题"Destination"。 当用户选择列表中的项目时,此标签上的文本将在运行时发生变化。
单击列表框和按钮控件以在代码编辑器中添加以下代码。
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' 设置表单的标题栏文本。
Me.Text = "tutorialspont.com"
ListBox1.Items.Add("Canada")
ListBox1.Items.Add("USA")
ListBox1.Items.Add("UK")
ListBox1.Items.Add("Japan")
ListBox1.Items.Add("Russia")
ListBox1.Items.Add("China")
ListBox1.Items.Add("India")
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
MsgBox("You have selected " + ListBox1.SelectedItem.ToString())
End Sub
Private Sub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs)
Handles ListBox1.SelectedIndexChanged
Label2.Text = ListBox1.SelectedItem.ToString()
End Sub
End Class
当使用 Microsoft Visual Studio 工具栏上的"开始"按钮执行并运行上述代码时,它将显示以下窗口 −
当用户选择目的地时,第二个标签中的文本会发生变化 −
单击"选择"按钮将显示一个包含用户选择的消息框 −
示例 2
在此示例中,我们将用项目填充列表框、检索列表框中的项目总数、对列表框进行排序、删除一些项目并清除整个列表框。
设计表单 −
在代码编辑器窗口中添加以下代码 −
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' 设置表单的标题栏文本。
Me.Text = "tutorialspont.com"
' 创建多列和多选列表框
ListBox1.MultiColumn = True
ListBox1.SelectionMode = SelectionMode.MultiExtended
End Sub
'填充列表
Private Sub Button1_Click_1(sender As Object, e As EventArgs) _
Handles Button1.Click
ListBox1.Items.Add("Safety")
ListBox1.Items.Add("Security")
ListBox1.Items.Add("Governance")
ListBox1.Items.Add("Good Music")
ListBox1.Items.Add("Good Movies")
ListBox1.Items.Add("Good Books")
ListBox1.Items.Add("Education")
ListBox1.Items.Add("Roads")
ListBox1.Items.Add("Health")
ListBox1.Items.Add("Food for all")
ListBox1.Items.Add("Shelter for all")
ListBox1.Items.Add("Industrialisation")
ListBox1.Items.Add("Peace")
ListBox1.Items.Add("Liberty")
ListBox1.Items.Add("Freedom of Speech")
End Sub
'对列表进行排序
Private Sub Button2_Click(sender As Object, e As EventArgs) _
Handles Button2.Click
ListBox1.Sorted = True
End Sub
'清除列表
Private Sub Button3_Click(sender As Object, e As EventArgs) _
Handles Button3.Click
ListBox1.Items.Clear()
End Sub
'删除所选项目
Private Sub Button4_Click(sender As Object, e As EventArgs) _
Handles Button4.Click
ListBox1.Items.Remove(ListBox1.SelectedItem.ToString)
End Sub
'计算项目数量
Private Sub Button5_Click(sender As Object, e As EventArgs) _
Handles Button5.Click
Label1.Text = ListBox1.Items.Count
End Sub
'在第三个标签上显示所选项目
Private Sub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs) _
Handles ListBox1.SelectedIndexChanged
Label3.Text = ListBox1.SelectedItem.ToString()
End Sub
End Class
当使用 Microsoft Visual Studio 工具栏上的"开始"按钮执行并运行上述代码时,它将显示以下窗口 −
填写列表并检查其他按钮的工作情况 −
❮ vb.net_basic_controls.html
❮ 上一节
下一节 ❯