我有一个带有依赖项属性的可重用用户控件,用于设置矩形的颜色。该属性使用Brush作为类型。
数据绑定工作正常,但是当绑定有错误或未指定其值时,我想添加一个回退和空值。 这是我的XAML:
<Rectangle Fill="{Binding Path=UnderLineColor, ElementName=Header,
FallbackValue=LightGrey, TargetNullValue=LightGrey}"
Height="2"
Margin="0,2"
Grid.Row="1"
Grid.ColumnSpan="2" />
UnderLineColor DP的代码:
public Brush UnderLineColor
{
get { return (Brush)GetValue(UnderLineColorProperty); }
set { SetValue(UnderLineColorProperty, value); }
}
public static readonly DependencyProperty UnderLineColorProperty =
DependencyProperty.Register("UnderLineColor", typeof(Brush), typeof(SectionHeader), null);
问题是SL似乎不接受我指定的后备和nullvalue。
我应该在这些属性中写入什么值才能使其正常工作?或者我应该使用ValueConverter而不是这种方法吗?
修改
今天的最佳提示:灰色!=灰色。问题现在已经解决。 :)