[英]WPF: Reference Visibility enum value in MultiBinding Binding Source
我编写了一个基于通用前缀运算符的多绑定转换器,该转换器获取可以是运算符或值的绑定值列表,然后根据定义的运算符集的预定义行为来计算值。
像这样:
<MenuItem.Background>
<MultiBinding Converter="{StaticResource ArithmeticsConverter}">
<Binding Source="?"/>
<Binding Path="IsDirty"/>
<Binding>
<Binding.Source>
<SolidColorBrush Color="#dddf05"/>
</Binding.Source>
</Binding>
<Binding>
<Binding.Source>
<SolidColorBrush Color="#F0F0F0"/>
</Binding.Source>
</Binding>
</MultiBinding>
如果脏,则返回#dddf05,否则返回#f0f0f0。
因此,这非常方便,因为它几乎是我现在唯一需要的转换器,xaml很冗长,但至少我不必为每种情况编写转换器。
我的问题是我想做类似的事情:
?
=
空值
一些变量
可见
倒塌
并将其设置为
<MyControl.Visible>
即,如果SomeVariable为null,则返回Visible,否则为Collapsed。 但是我无法引用可见性值(或更笼统地说,系统枚举值),就像我在上面引用颜色值一样。 我知道这一定是有可能的,因为人们可以轻松地内联引用这些值。
您可以使用这些:
<Visibility>Visible</Visibility>
<Visibility>Hidden</Visibility>
<Visibility>Collapsed</Visibility>
XAML处理器基本上将获取标记的内部字符串并将其解析/转换为枚举值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.