0

我有一个深度不同的 WPF TreeView。我的应用程序还可以在树内进行搜索。这是通过使用 ICollectionView 接口的 Filter 属性来完成的。搜索和过滤一切正常,但问题出在我尝试删除过滤器时。

我有以下情况;我输入搜索条件并过滤树视图并显示结果。现在,当我按下按钮清除过滤器时,过滤器被删除,但问题是它只显示我之前搜索的子节点而不显示其他节点的子节点,这些节点也无法展开了。

我的搜索函数递归地遍历树并测试输入的搜索文本的每个节点。

我是否必须应用 view.Filter = null; 每个节点及其子节点的声明?

谢谢,

授予

4

1 回答 1

1

是的!

每个层次结构级别都有自己的 ICollectionView 并且每个都使用自己的过滤。所以是的,你必须清除每个(父)节点上的过滤器(取决于你的确切实现)。

于 2011-04-18T16:55:34.050 回答