默认SolidColorBrush

时间:2013-02-28 09:36:36

标签: c# wpf windows-runtime

我有一个转换器,可以将自定义对象转换为SolidColorBrush,用于ListView文本颜色的项目,可以是红色或黑色。 问题是listview的PointerOver模板(以及其他模板)会自动反转文本颜色以匹配对比度,但转换器设置的颜色并没有自动更改,所以我的问题是是否有默认的SolidColorBrush,它不会生成这个问题?

2 个答案:

答案 0 :(得分:2)

试试这个:

SolidColorBrush defaultBrush = new SolidColorBrush();
controlObject.BorderBrush = defaultBrush;

答案 1 :(得分:1)

我相信default(SolidColorBrush)null

您可以使用ItemContainerStyleSelector代替转换器或与转换器一起使用不同的项目样式,包括画笔。您当前的解决方案可能会覆盖{TemplateBinding Foreground}设置在某个默认模板中的某个位置,这会破坏依赖项属性值推断链。您可以查看此信息以获取有关依赖项属性Value Precedence的更多信息。