是否可以将DynamicResource设置为TargetNullValue?

时间:2013-07-24 12:31:20

标签: wpf

如果没有,我怎样才能实现类似的行为?我想将某些控件的Backgrond属性绑定到Brush类型的属性。我希望在该属性设置为null时使用默认背景(使用资源键解析)。

1 个答案:

答案 0 :(得分:3)

TargetNullValue的默认实现不允许这样做。一个可能的简单解决方案是使用Style

实施DataTrigger
 <Style TargetType="TextBlock">
     <Setter Property="Background" Value="{Binding BrushProperty}" />
     <Style.Triggers>
         <DataTrigger Binding="{Binding BrushProperty}" Value="{x:Null}">
              <Setter Property="Background" Value="{DynamicResource defaultBrush}" />
         </DataTrigger>
     </Style.Triggers>
 </Style>

我使用TextBlock类型作为示例,您可以使用您需要的类型。

相关问题