ControlTemplate.TargetType Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает тип, для которого ControlTemplate это предназначено.
public:
property Type ^ TargetType { Type ^ get(); void set(Type ^ value); };
[System.Windows.Markup.Ambient]
public Type TargetType { get; set; }
[<System.Windows.Markup.Ambient>]
member this.TargetType : Type with get, set
Public Property TargetType As Type
Значение свойства
Значение по умолчанию — null.
- Атрибуты
Исключения
Свойство TargetType не должно быть null , если определение шаблона имеет значение ContentPresenter.
Указанные типы недопустимы. TargetType Должен ControlTemplate быть или наследуется от Control, или Pageот PageFunctionBase, или от .
Примеры
В следующем примере показано использование этого свойства:
<Style x:Key="{x:Type Label}"
TargetType="Label">
<Setter Property="HorizontalContentAlignment"
Value="Left" />
<Setter Property="VerticalContentAlignment"
Value="Top" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Label">
<Border>
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
RecognizesAccessKey="True" />
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled"
Value="false">
<Setter Property="Foreground">
<Setter.Value>
<SolidColorBrush Color="{DynamicResource DisabledForegroundColor}" />
</Setter.Value>
</Setter>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
В приведенном выше примере используется следующий ресурс:
Полный пример см. в разделе "Стиллинг" с примером ControlTemplates.
Комментарии
Если у вас есть автономный ControlTemplate раздел ресурсов с TargetType свойством, заданным для типа, ControlTemplate он не применяется к данному типу автоматически. Вместо этого необходимо указать x:Key и применить шаблон явным образом.
Кроме того, обратите внимание, что TargetType свойство требуется для ControlTemplate определения ContentPresenterшаблона.
Использование атрибута XAML
<object TargetType="typeName"/>
Значения XAML
Typename Имя типа класса. Чтобы ссылаться на Type имя класса, используйте расширения разметки и XAML WPF.