- - PR -
ComboBoxで、Textへ代入しても、前の値が参照される。
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-03-26 16:34
.NET初心者ですが、コンボボックスの下記の問題で困っています。どうぞ教えてください。
手入力では、問題ないのですが、プログラムでTextへ代入すると、combobox1.Textの内容が前のままです。リストから選択した直後に、別な値をプログラムから代入すると上記のようになります。手入力の後に、別な値をプログラムから代入すると問題ありません。 画面上は代入した値が表示されているのですが、combobox1.Textを参照すると、前の値のままです。手入力した場合は、問題ありません。 combobox1.DataSource 、combobox1.DisplayMember、combobox1.ValueMember の 3つを指定しています。 [ メッセージ編集済み 編集者: 未記入 編集日時 2004-03-26 17:01 ] | ||||
|
投稿日時: 2004-03-26 21:30
こんばんは。
http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q814346 ここにあるように、どうやらバグのようです。 AccessibleObjectを使用する回避策があるようです。 | ||||
|
投稿日時: 2004-03-27 07:13
ありがとうございます。調べてみます。
| ||||
|
投稿日時: 2004-03-27 08:52
ありがとうございました。おかげさまで、前進いたしました。しかし、以前解決しない問題があります、何とかいい方法はありませんしょうか。
--- AccessibilityObjectを使用して変更後のTextの値参を照することはできましたが、 別な問題として、以前、TextChangedイベントが発生しません、何故でしょうか。 combo1.Textに値を代入しても前の値からtextの値が変化しないため、TextChangedイベント が発生しないと思われますが。(AccessibilityObject.valueに値を代入してみても、 TextChangedイベントは発生しませんでした) TextChangedイベントが発生しなくても、combo1.AccessibilityObject.valueへの値の代入 により発生するイベントがあれば助かるのですが。 | ||||
|
投稿日時: 2004-03-27 13:15
凝ったことをしようとすると、きりがありませんので”逃げ”の対策を…
Textプロパティに直接値を代入してもcomboBoxの値は更新されませんが、 その直前にTextプロパティにnullを代入してみてください。 つまり、以下のようになります。
そうすれば、多少余分なTextChangedイベントが発生しますが、 一応キャッチすることはできます。 | ||||
|
投稿日時: 2004-03-27 18:46
色々ありがとうございました。おかげさまで、何とかなりそうです。
感謝いたします。 |
1