VB.Net - 组合框控件



组合框控件用于显示各种项目的下拉列表。它结合了用户输入项目的文本框和用户从中选择项目的下拉列表。

让我们通过从工具箱中拖动一个 ComboBox 控件并将其放到窗体上,来创建一个组合框。

VB.Net ComboBox Control

您可以从属性窗口或在运行时填充列表框项目。要向组合框添加项目,请选择组合框控件,然后转到该控件的属性窗口。单击“项目”属性旁边的省略号 (...) 按钮。这将打开“字符串集合编辑器”对话框,您可以在其中逐行输入值。

组合框控件的属性

以下是组合框控件的一些常用属性:

序号 属性和描述
1

AllowSelection

获取一个值,指示列表是否启用列表项的选择。

2

AutoCompleteCustomSource

获取或设置一个自定义 System.Collections .Specialized.StringCollection,当 AutoCompleteSource 属性设置为 CustomSource 时使用。

3

AutoCompleteMode

获取或设置一个选项,该选项控制组合框自动完成功能的工作方式。

4

AutoCompleteSource

获取或设置一个值,指定用于自动完成的完整字符串的来源。

5

DataBindings

获取控件的数据绑定。

6

DataManager

获取与此控件关联的 CurrencyManager。

7

DataSource

获取或设置此组合框的数据源。

8

DropDownHeight

获取或设置组合框下拉部分的高度(以像素为单位)。

9

DropDownStyle

获取或设置一个值,指定组合框的样式。

10

DropDownWidth

获取或设置组合框下拉部分的宽度。

11

DroppedDown

获取或设置一个值,指示组合框是否显示其下拉部分。

12

FlatStyle

获取或设置组合框的外观。

13

ItemHeight

获取或设置组合框中项目的的高度。

14

Items

获取一个对象,表示此组合框中包含的项目的集合。

15

MaxDropDownItems

获取或设置组合框下拉部分中显示的最大项目数。

16

MaxLength

获取或设置用户可以在组合框的可编辑区域中输入的最大字符数。

17

SelectedIndex

获取或设置指定当前所选项目的索引。

18

SelectedItem

获取或设置组合框中当前所选的项目。

19

SelectedText

获取或设置组合框可编辑部分中所选的文本。

20

SelectedValue

获取或设置 ValueMember 属性指定的成员属性的值。

21

SelectionLength

获取或设置组合框可编辑部分中所选字符的数量。

22

SelectionStart

获取或设置组合框中所选文本的起始索引。

23

Sorted

获取或设置一个值,指示组合框中的项目是否已排序。

24

Text

获取或设置与此控件关联的文本。

组合框控件的方法

以下是组合框控件的一些常用方法:

序号 方法名称和描述
1

BeginUpdate

防止控件绘制,直到调用 EndUpdate 方法,同时一次一个地向组合框添加项目。

2

EndUpdate

在 BeginUpdate 方法将其关闭后,恢复组合框的绘制。

3

FindString

查找组合框中以指定参数作为字符串开头的第一个项目。

4

FindStringExact

查找组合框中与指定字符串完全匹配的第一个项目。

5

SelectAll

选择组合框可编辑区域中的所有文本。

组合框控件的事件

以下是组合框控件的一些常用事件:

序号 事件和描述
1

DropDown

组合框的下拉部分显示时发生。

2

DropDownClosed

组合框的下拉部分不再可见时发生。

3

DropDownStyleChanged

组合框的 DropDownStyle 属性更改时发生。

4

SelectedIndexChanged

组合框控件的 SelectedIndex 属性更改时发生。

5

SelectionChangeCommitted

所选项目已更改且更改显示在组合框中时发生。

示例

在此示例中,让我们用各种项目填充组合框,获取组合框中所选的项目并在列表框中显示它们,并对项目进行排序。

拖放一个组合框来存储项目,一个列表框来显示所选项目,四个按钮控件分别用于添加所选项目的列表框,填充组合框,对项目进行排序以及清除组合框列表。

添加一个标签控件,用于显示所选项目。

Result Form

在代码编辑器窗口中添加以下代码:

Public Class Form1
   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
      ' Set the caption bar text of the form.  
      Me.Text = "tutorialspont.com"
   End Sub
   
   'sends the selected items to the list box
   Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
      If ComboBox1.SelectedIndex > -1 Then
          Dim sindex As Integer
          sindex = ComboBox1.SelectedIndex
          Dim sitem As Object
          sitem = ComboBox1.SelectedItem
          ListBox1.Items.Add(sitem)
      End If
   End Sub
   
   'populates the list
   Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
      ComboBox1.Items.Clear()
      ComboBox1.Items.Add("Safety")
      ComboBox1.Items.Add("Security")
      ComboBox1.Items.Add("Governance")
      ComboBox1.Items.Add("Good Music")
      ComboBox1.Items.Add("Good Movies")
      ComboBox1.Items.Add("Good Books")
      ComboBox1.Items.Add("Education")
      ComboBox1.Items.Add("Roads")
      ComboBox1.Items.Add("Health")
      ComboBox1.Items.Add("Food for all")
      ComboBox1.Items.Add("Shelter for all")
      ComboBox1.Items.Add("Industrialisation")
      ComboBox1.Items.Add("Peace")
      ComboBox1.Items.Add("Liberty")
      ComboBox1.Items.Add("Freedom of Speech")
      ComboBox1.Text = "Select from..."
   End Sub
   'sorting the list
   
   Private Sub Button3_Click(sender As Object, e As EventArgs)
      ComboBox1.Sorted = True
   End Sub
   'clears the list
   
   Private Sub Button4_Click(sender As Object, e As EventArgs)
      ComboBox1.Items.Clear()
   End Sub
   'displaying the selected item on the label
   
   Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) _
     Handles ListBox1.SelectedIndexChanged
      Label1.Text = ComboBox1.SelectedItem.ToString()
   End Sub
End Class

当以上代码执行并使用 Microsoft Visual Studio 工具栏中可用的“启动”按钮运行时,它将显示以下窗口:

Result Form

单击各种按钮以检查每个按钮执行的操作:

Result Form
vb.net_basic_controls.htm
广告