隐藏WPF TreeView中的元素

时间:2012-06-27 07:17:43

标签: wpf treeview hierarchicaldatatemplate

我有以下情况:

我有一个ViewModel,其中包含要在TreeView中显示的层次元素。到现在为止还挺好。我现在要做的是根据ViewModel-Element上设置的某些属性(如IsConfigurable等)隐藏/删除TreeView中的元素。 如果我禁用模具DataTemplate,该元素将被删除,但也删除所有子元素,这不是我想要的。

这甚至可能吗?

迎接,

尔根

1 个答案:

答案 0 :(得分:0)

这听起来有些奇怪,但不过......

您应该考虑您的申请应保持测试和可调试 你的模型原样包含原始数据(集合) - 没有插入这里。在ViewModel中,您要绑定的对象,您可以根据需要显示转​​换来计算转换。这种方法的好处是,您可以“轻松”测试/调试转换。现在将TreeView绑定到计算的层次结构,而不进行模糊实验。如果ViewModel中的属性(您提到IsConfigurable或其他)发生更改,您就知道何时重新计算绑定层次结构。