我想制作一个模板样式,可以将其用作静态资源,如下所示:
<TextBox
Style="{StaticResource CollapsingTextBox}"
Text="{Binding SomeNullableValue}" />
现在,顾名思义,当绑定值为null
时,我希望文本框折叠。通常,我会使用数据触发器来执行此操作,例如:
<DataTrigger Binding="{Binding SomeNullableValue}" Value="{x:null}">
<Setter Property="Visibility" Value="Collapsed" />
</DataTrigger>
但是,如果我将数据触发器移动到可重复使用的模板样式,那么直接绑定到绑定属性(即SomeNullableValue
)就不好了。相反,我需要绑定模板用户的绑定(如果这有意义)。
如何实现这种绑定?
答案 0 :(得分:1)
尝试使用具有Text
属性的触发器:
<Trigger Property="Text" Value="">
<Setter Property="Visibility" Value="Collapsed" />
</Trigger>
<Trigger Property="Text" Value="{x:null}">
<Setter Property="Visibility" Value="Collapsed" />
</Trigger>