我正在尝试做这样的事情......
<Style
x:Key="MyBorderStyle"
TargetType="Border">
<Setter
Property="BorderBrush"
Value="{StaticResource MyBorderBrush}" />
<Setter
Property="Background"
Value="{StaticResource MyBackgroundBrush}" />
<Setter
Property="Padding"
Value="{TemplateBinding Padding}" />
</Style>
...但我得到了错误:'Padding' member is not valid because it does not have a qualifying type name.
如何提供“合格的类型名称”?
注意:我尝试这样做的原因是我想在一系列类似的 ControlTemplates 中包含相同的 Border。
谢谢。
编辑:
嗯,我试过这个...
<Setter
Property="Padding"
Value="{TemplateBinding GridViewColumnHeader.Padding}" />
...它实际上已编译,但是当我运行该应用程序时,我得到了XamlParseException
:
Cannot convert the value in attribute 'Value' to object of type ''.
我想也许有资格Padding
使用GridViewColumnHeader
(这是我想使用这种风格的 ControlTemplate)会起作用,但没有骰子。
编辑2:
好吧,根据文档TemplateBinding
,它说:
将控件模板中的属性值链接为模板化控件上的某些其他公开属性的值。
所以听起来我想做的事情是完全不可能的。我真的希望能够为我的控件模板中的某些控件创建可重用的样式,但我猜模板绑定不能包含在这些样式中。