选择ComboBox后的WPF过滤ListBox更改c#

时间:2013-07-25 13:28:28

标签: c# wpf combobox listbox filtering

我将ComboBox绑定到1个数据表(1列“Country”),并将列表框绑定到另一个1(2列“Name”,“Country”)。 如何在组合框中更改所选项目的列表框过滤器?

例如:

组合框值: GER,POL,RUS

绑定到列表框的数据表:

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

当我在组合框中选择GER时,我想刷新列表框以仅查看:
约翰
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

为什么会延迟?

1 个答案:

答案 0 :(得分:0)

combobox.text   is delayed for 1 event

在我需要的选择更改事件代码中获取实际选择的值

DataRowView drw = (DataRowView)(sender as ComboBox).SelectedItem;
string text = drw["Type"].ToString() ;