Я пытаюсь сделать что-то вроде этого...
<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.
Спасибо.
EDIT:
Ну, я пробовал это...
<Setter
Property="Padding"
Value="{TemplateBinding GridViewColumnHeader.Padding}" />
... и он действительно скомпилирован, но затем, когда я запустил приложение, я получил XamlParseException
:
Cannot convert the value in attribute 'Value' to object of type ''.
Я подумал, что, возможно, квалификационный Padding
с GridViewColumnHeader
(который является элементом ControlTemplate, который я хочу использовать с этим стилем) будет работать, но не кубик.
ИЗМЕНИТЬ 2:
Хорошо, согласно документации для TemplateBinding
, он говорит:
Связывает значение свойства в шаблоне управления как значение какого-либо другого открытого свойства в шаблонизированном элементе управления.
Итак, похоже, что я пытаюсь сделать это просто невозможно. Я действительно хотел бы иметь возможность создавать многоразовые стили для определенных элементов управления в моих шаблонах управления, но я думаю, что привязки шаблонов не могут быть включены в эти стили.