1

http://msdn.microsoft.com/en-us/library/system.windows.forms.combobox.selectionchangecommitted.aspxの指示に従いましたが、問題が発生しました。

まず、このボックスは空で無効になっています。次に、検索が完了すると、このコンボボックスに値が入力されます。値が0=>"", 1=>"My first value", 2="My second value". 次に、このボックスにハンドラーがあり、値を変更するたびにトリガーされます。次のようになります

Private Sub MyComboBox_SelectionChangeCommitted(ByVal sender As Object, ByVal e As EventArgs) Handles MyComboBox.SelectionChangeCommitted

    MsgBox(MyComboBox.SelectedText)

End Sub

ここで番号 1 を選択すると、メッセージ ボックスに "" が表示されます。次に番号2を選択すると、「私の最初の値」などが表示されます。一歩後ろです。値が変更される前にトリガーされます。この値を待ってからメッセージボックスをトリガーするようにするにはどうすればよいですか?

4

1 に答える 1

2

MSDN は特にそれについて警告しています。SelectedText は間違ったプロパティです。コンボボックスのテキストボックス部分でユーザーが選択したテキストを取得するためにのみ使用してください。インデックスを変更した後にすべてのテキストが選択されますが、それはこのイベントが実行されるまで起こりません。代わりに SelectedItem.ToString() を使用してください。

于 2012-12-11T13:36:35.947 に答える