您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關如何正確的使用ComboBox 控件,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
一、ComboBox 控件的常用屬性:
1、BackColor 屬性:獲取或設置ComboBox 控件的背景色。
2、DropDownStyle 屬性:獲取或設置指定組合框樣式的值,確定用戶能否在文本部分中輸入新值以及列表部分是否總顯示。它包含三個值,默認值為 DropDown,如下表所示:
成員名稱 說明
DropDown 文本部分可編輯。用戶必須單擊箭頭按鈕來顯示列表部分。
DropDownList 用戶不能直接編輯文本部分。用戶必須單擊箭頭按鈕來顯示列表部分。
Simple 文本部分可編輯。列表部分總可見。
3、DropDownWidth 屬性:用于獲取或設置組合框下拉部分的寬度(以像素為單位),有些列表項太長,則需要通過改變該屬性來顯示該類表項的全部文字,如果未設置 DropDownWidth 的值,該屬性返回組合框的 Width。需要注意的是,下拉部分的寬度不能小于 ComboBox 的寬度,所以我們設置 DropDownWidth 的值如果小于ComboBox 的寬度時下拉列表框的寬度還是與文本框的寬度一樣。
4、DroppedDown 屬性:獲取或設置一個值,該值指示組合框是否正在顯示其下拉部分。如果顯示下拉部分,則為 true;否則為 false。默認值為 false。
5、IntegralHeight 屬性:指定是否自動調整編輯框或列表框控件的高度,這樣可以正確顯示控件中的最后一項。指定是否自動調整文本框控件的高度,以顯示一行文本。設計時可用;運行時只讀。默認為False。如果列表框控件的高度不合適,則控件中的最后一行文字會只顯示一部分,將 IntergralHeight 設置為“True” ,可以自動調整控件的高度,這樣可以正確顯示控件中的最后一項。注意:當 integralheight 屬性設置為“True” 時,Height 屬性的值可能與控件的真實高度不符。
6、Items 屬性:獲取一個對象,該對象表示該 ComboBox 中所包含項的集合。詳細用法我們在下文介紹。
7、MaxDropDownItems 屬性:下拉部分中可顯示的最大項數。該屬性的最小值為 1,最大值為 100。
8、Text 屬性:ComboBox 控件中文本輸入框中顯示的文本。
9、SelectedIndex 屬性和 SelectedItem 屬性:SelectedIndex 屬性返回一個表示與當前選定列表項的索引的整數值,可以編程更改它,列表中相應項將出現在組合框的文本框內。如果未選定任何項,則SelectedIndex 為-1;如果選擇了某個項,則SelectedIndex 是從0開始的整數值。SelectedItem 屬性與 SelectedIndex 屬性類似,但是SelectedItem 屬性返回的是項。
10、SelectedText 屬性:表示組合框中當前選定文本的字符串。如果 DropDownStyle 設置為 ComboBoxStyle.DropDownList,則返回值為空字符串 ("")。可以將文本分配給此屬性,以更改組合框中當前選定的文本。如果組合框中當前沒有選定的文本,則此屬性返回一個零長度字符串。如下代碼,我們可以在ComboBox 控件的鼠標事件中驗證該屬性:
Private Sub ComboBox1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles ComboBox1.MouseUp MessageBox.Show(ComboBox1.SelectedText) End Sub
返回的值則是我們用鼠標選定了的文本。
與之對應的 SelectionLength 屬性返回的則是該文本的字符數,SelectionStart 屬性返回的則是組合框中選定文本的起始位置。
二、ComboBox 控件的重要方法:
1、BeginUpdate 方法和 EndUpdate 方法:當使用Add 方法一次添加一個項時,則可以使用 BeginUpdate 方法,以防止每次向列表添加項時控件都重新繪制 ComboBox。完成向列表添加項的任務后,調用 EndUpdate 方法來啟用 ComboBox 進行重新繪制。當向列表添加大量的項時,使用這種方法添加項可以防止繪制 ComboBox 時閃爍。如下代碼所示:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim i As Integer = 0 ComboBox1.BeginUpdate() For i = 0 To 999 ComboBox1.Items.Add("Item " &ComboBox1.Items.Count.ToString) Next ComboBox1.EndUpdate() End Sub
2、Add 方法:items屬性的方法之一,一般這樣來使用:
ComboBox1.Items.Add("Item 0" )
還可以使用items屬性的Clear方法來清除所有的列表項。
3、FindString 方法和FindStringExact 方法:
FindString 方法用于查找 ComboBox 中以指定字符串開始的第一個項,該方法是模糊查詢,但是查找的字符串一定在匹配項的開始位置。
FindStringExact 方法用于查找與指定字符串完全匹配的項。
4、GetItemText 方法:返回指定項的文本表示形式。使用形式如下:
GetItemText(item)
三、示例:
我們這里以代碼來了解ComboBox 控件的使用,在窗體中加入一個Combobox控件,四個Button控件,一個TextBox控件,一個GroupBox控件,布局如下圖四所示:
1、在“添加1000項”的按鈕Click事件中添加如下代碼:
Dim i As Integer = 0 ComboBox1.BeginUpdate() For i = 0 To 999 ComboBox1.Items.Add("Item " &(ComboBox1.Items.Count + 1).ToString) Next ComboBox1.EndUpdate()
2、在“添加一個項”按鈕Click事件中添加如下代碼:
ComboBox1.Items.Add(TextBox1.Text)
即以文本框中輸入的文本作為項的文字。
3、在“查找模糊匹配項”按鈕的Click事件中添加如下代碼:
ComboBox1.SelectedIndex = ComboBox1.FindString(TextBox1.Text)
即返回以文本框中輸入的文本開頭的第一項作為ComboBox控件的選中項。
4、在“查找完全匹配項”按鈕的Click事件中添加如下代碼:
ComboBox1.SelectedIndex = ComboBox1.FindStringExact(TextBox1.Text)
即返回與文本框中輸入的文本完全匹配的項作為ComboBox控件的選中項。
5、在ComboBox1的SelectedIndexChanged事件中添加如下代碼:
Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged MessageBox.Show(ComboBox1.GetItemText(ComboBox1.SelectedItem)) End Sub
以上就是如何正確的使用ComboBox 控件,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。