XAML基于条件(IF / Then View)

时间:2017-07-18 19:34:56

标签: c# wpf xaml

所以我正在尝试构建一个可能有也可能没有子代的用户控件。我知道C#,但仍然在学习很多关于XAML方面的知识。

我想做的是:

IF Children.Count> 0然后创建TreeView ELSE创建标签

我知道如何创建单个视图但我不知道如何根据这样的条件创建视图。谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

“无代码问题”由“无代码答案”奖励; o)

在您的“usercontrol”中放置一个树视图 将您的标签放入“usercontrol”

将两者的Visibility属性绑定到收藏“孩子”的收藏夹。

创建两个不同的(或一个参数化的)IValueConverter-Implementing-Converter,并在Binding中将其用作“Converter = ....”。

当你有少于两个孩子时,让一个转换器返回Visibility.Hidden,当你有一个或一个孩子时,让第二个返回Visibility.Hidden。

将正确的Converter添加到每个Bindings中,以便当Collection中有多个Child时隐藏Label,如果Collection中少于两个Childs则隐藏TreeView。

重新思考为此建立一个完整的“用户控制”...