强制组合框更新其文本字段

时间:2018-03-28 17:47:29

标签: vb.net events combobox

我有一个带有下拉项目的典型组合框。下拉列表中的项目包含一个带有代码的字符串,然后是一个空格,然后是代码的描述。我试图让组合框的文本在选择完成后显示代码,但是有一个竞争条件,我的文本字段没有被组合框更新,直到我改变它。如何强制组合框自行更新,以便我可以在之后更改文本。

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消除我的更改后,组合框会更新到所选项目。

1 个答案:

答案 0 :(得分:0)

我想出了当我输入update_desc子例程时将事件标记为已处理的答案。因此我需要在使用

进入例程时捕获事件

update_desc(sender as object, e as system.eventargs)

然后在例程中使用

e.handled = true

并且在离开例程后事件不会继续发生,我的更改将保留。