【发布时间】:2015-05-02 07:38:12
【问题描述】:
我正在构建一个按钮样式,它依赖于将颜色画笔转换为较深的阴影来创建阴影。在常规 XAML 中,我有一个转换器,而不是我在完美工作的绑定上使用的转换器:
BorderBrush="{Binding Background, Converter={StaticResource ColourBrushToDarker}}"
但我无法让转换器在样式定义中使用 TemplateBinding。有办法吗? Visual Studio 只是不允许在 TemplateBinding 上使用转换器。
我尝试了以下方法,但没有成功:
Background="{Binding Converter={StaticResource ColourBrushToDarker}, ConverterParameter={Binding Path=Background}}"/>
(我已经尝试了上面的行,用 TemplateBinding 替换了 Binding 以及其他几个迭代)
这可以吗?我想到的另一件事是在 C# 中编写一个进行转换的属性,但样式没有代码隐藏文件。
我追求的结果是能够创建一个比背景属性更暗的阴影的新画笔,因此按钮始终具有比其主要背景颜色更暗的阴影。
【问题讨论】:
标签: xaml binding styles converter templatebinding