如果绑定字符串为空,是否有标准方法为WPF绑定设置默认值或回退值?
<TextBlock Text="{Binding Name, FallbackValue='Unnamed'" />
Run Code Online (Sandbox Code Playgroud)
在FallbackValue似乎只在踢Name空,但不是当它被设置为String.Empty.
我有很多TextBox控件,我正在尝试编写一个样式,在禁用 Control 时清除Text属性.我不希望代码中有事件处理程序.
我写了这个:
<Style TargetType="{x:Type TextBox}">
<Style.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Text" Value="{x:Null}" />
</Trigger>
</Style.Triggers>
</Style>
Run Code Online (Sandbox Code Playgroud)
问题是如果TextBox定义如下:
<TextBox Text={Binding Whatever} />
Run Code Online (Sandbox Code Playgroud)
然后触发器不起作用(可能是因为它的约束)如何克服这个问题?