我有一个带有下拉项目的典型组合框。下拉列表中的项目包含一个带有代码的字符串,然后是一个空格,然后是代码的描述。我试图让组合框的文本在选择完成后显示代码,但是有一个竞争条件,我的文本字段没有被组合框更新,直到我改变它。如何强制组合框自行更新,以便我可以在之后更改文本。
With code_combo_box
AddHandler .SelectedIndexChanged, AddressOf update_desc
End With
Private Sub update_desc()
If code_combo_box.SelectedIndex >= 0 Then
Dim temp_string As String() = code_combo_box.SelectedItem.split(" ")
code_combo_box.Text = temp_string(0)
End If
End Sub
在调用update_desc消除我的更改后,组合框会更新到所选项目。
答案 0 :(得分:0)
我想出了当我输入update_desc子例程时将事件标记为已处理的答案。因此我需要在使用
进入例程时捕获事件 update_desc(sender as object, e as system.eventargs)
然后在例程中使用
e.handled = true
并且在离开例程后事件不会继续发生,我的更改将保留。