0

ComboBoxを1つのデータテーブル(1列「国」)にバインドし、リストボックスを別の1(2列「名前」、「国」)にバインドしました。コンボボックスの変更で選択したアイテムにリストボックスフィルターを作成する方法は?

例えば:

コンボボックスの値: GER、POL、RUS

リストボックスにバインドされたデータテーブル:

Name | Country 
John | GER
Luke | POL
Sasha| RUS
CJ   | GER
Carl | POL

コンボ ボックスで GER を選択すると、リスト ボックスを更新して次の項目のみを表示したい:
John
CJ

私はすでにデータテーブルにフィルターを使用しました

   dataSet.Tables["Name"].DefaultView.RowFilter = "Country Like '%" + comboBoxFilter.Text + "%' ";

しかし、結果が1クリック遅れました。

 change to | result

 GER       | no change
 POL       | now I see GER names
 RUS       | now I see POL names
 POL       | now I see RUS names

なぜそれが遅れているのですか?

4

1 に答える 1

0
combobox.text   is delayed for 1 event

必要な選択変更イベントコードで実際に選択された値を取得するには

DataRowView drw = (DataRowView)(sender as ComboBox).SelectedItem;
string text = drw["Type"].ToString() ;
于 2013-07-26T09:02:35.540 に答える