O meu Style Setter do WPF pode usar um TemplateBinding?
Estou tentando fazer algo assim ...
<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>
... mas eu recebo o erro:'Padding' member is not valid because it does not have a qualifying type name.
Como faço para fornecer um "nome do tipo de qualificação"?
Nota: O motivo pelo qual estou tentando fazer isso é que gostaria de incluir o mesmo Border em uma série de ControlTemplates semelhantes.
Obrigado.
EDITAR:
Bem, eu tentei isso ...
<Setter
Property="Padding"
Value="{TemplateBinding GridViewColumnHeader.Padding}" />
... e, na verdade, compilado, mas quando eu corri o aplicativo, eu tenho umXamlParseException
:
Cannot convert the value in attribute 'Value' to object of type ''.
Eu pensei que talvez qualificandoPadding
comGridViewColumnHeader
(que é o ControlTemplate que eu quero usar este estilo com) funcionaria, mas sem dados.
EDIT 2:
Bem, de acordo com a documentação paraTemplateBinding
, diz:
Vincula o valor de uma propriedade em um modelo de controle para ser o valor de alguma outra propriedade exposta no controle modelado.
Então parece que o que estou tentando fazer é simplesmente impossível. Eu realmente gostaria de poder criar estilos reutilizáveis para certos controles em meus modelos de controle, mas acho que as ligações de modelo não podem ser incluídas nesses estilos.