WPF Как использовать тот же шаблон - PullRequest
2 голосов
/ 04 февраля 2009

Ну, как мне использовать шаблон в TextBox и в PasswordBox? У меня есть 2 определенных шаблона, но они содержат точно такой же контент ....

1 Ответ

2 голосов
/ 04 февраля 2009

В иерархии классов оба элемента управления имеют только общий класс "Control". Таким образом, вы можете создать ControlTemplate для «Control» и назначить оба. Но если вам нужно иметь какие-либо специфичные для TextBox / PasswordBox шаблоны TemplateBindings в шаблоне, то это не сработает. Например, этот шаблон ниже будет работать для обоих элементов управления.

<ControlTemplate x:Key="template" TargetType="{x:Type Control}">
<Border BorderThickness="1,1,1,1" BorderBrush="#FF000000">
    <ScrollViewer x:Name="PART_ContentHost" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</Border>
</ControlTemplate>
...