【发布时间】:2013-07-26 17:02:35
【问题描述】:
我有 ComboBox 绑定到 1 个数据表(1 列“国家”)和列表框绑定到另一个 1(2 列“名称”,“国家”)。 如何在组合框更改中对所选项目进行列表框过滤?
例如:
组合框值: 德国、波兰、俄罗斯
数据表绑定到列表框:
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
为什么会延迟?
【问题讨论】:
-
您可以发布您的绑定或设置项目来源吗?
-
listBoxNames.DataContext = dataSet.Tables["Names"];
-
过滤后是否刷新表格?
-
是的,我愿意。没有任何区别。
标签: c# wpf combobox listbox filtering