[英]VBNET: How to Reset ComboBox after selection is made
如何將組合框重置為我在屬性中設置的默認文本。 假設我有一個帶有默認文本“ Rub y”的ComboBox,當將SelectedIndexChanged打印在文本框中之后,它不會重置為默認文本“ Ruby ”,而是重置為SelectedItem。 我希望它以后盡可能地讀“ Ruby ”。 謝謝
Dim _originalComboText As String
Sub New()
): _originalComboText = ComboBox1.Text
ComboBox1.Text = _originalComboText
如果檢查屬於表單的.designer.vb
文件的內容,則實際上可以通過賦值( =
)看到控件文本的初始化-因此vb.net在這里沒有特殊之處。 如果要保留文本,則必須將其保存在丟失之前。
這是完整的最小示例:
Public Class Form1
Dim _originalComboText As String
Sub New()
' This call is required by the designer.
InitializeComponent()
' Add any initialization after the InitializeComponent() call.
_originalComboText = ComboBox1.Text
End Sub
Private Sub ComboBox1_Leave(sender As Object, e As EventArgs) Handles ComboBox1.Leave
ComboBox1.Text = _originalComboText
End Sub
Private Sub ComboBox1_LocationChanged(sender As Object, e As EventArgs) Handles ComboBox1.LocationChanged
ComboBox1.Text = _originalComboText
End Sub
End Class
並且,如果您的兩個處理程序沒有不同,則將它們替換為一個-在Handles子句中使用兩個事件:
Private Sub ComboBox1_RestoreText(sender As Object, e As EventArgs) _
Handles ComboBox1.Leave, ComboBox1.LocationChanged
ComboBox1.Text = _originalComboText
End Sub
用這個:
Private Sub ComboBox1_Leave(sender As Object, e As EventArgs) Handles ComboBox1.Leave
ComboBox1.Text = "Ruby"
End Sub
Private Sub ComboBox1_LocationChanged(sender As Object, e As EventArgs) Handles ComboBox1.LocationChanged
ComboBox1.Text = "Ruby"
End Sub
因為用戶會選擇,所以說print <<"EOF"; ---mytext---EOF
print <<"EOF"; ---mytext---EOF
來自下拉列表的print <<"EOF"; ---mytext---EOF
,它將自動打印在文本框中。 他或她必須轉到文本框或其他地方。
我知道回答自己的問題不是慣例,但是否有人需要幫助。 這里是
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.