Compartilhar via


ControlTemplate.TargetType Propriedade

Definição

Obtém ou define o tipo para o qual esse ControlTemplate foi projetado.

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

Valor da propriedade

O valor padrão é null.

Atributos

Exceções

A propriedade TargetType não deverá ser null se a definição do modelo tiver um ContentPresenter.

Os tipos especificados não são válidos. O TargetType de um ControlTemplate deve ser ou herdar de um Control, Page ou PageFunctionBase.

Exemplos

O exemplo a seguir demonstra o uso dessa propriedade:

<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>

O exemplo acima usa o seguinte recurso:

Para ver o exemplo completo, consulte Styling with ControlTemplates Sample (Estilos com a amostra ControlTemplates).

Comentários

Se você tiver um autônomo ControlTemplate na seção de recursos com a TargetType propriedade definida como um tipo, o ControlTemplate não será aplicado a esse tipo automaticamente. Em vez disso, você precisa especificar um x:Key e aplicar o modelo explicitamente.

Observe também que a TargetType propriedade é necessária em um ControlTemplate se a definição de modelo contiver um ContentPresenter.

Uso do Atributo XAML

<object  TargetType="typeName"/>

Valores XAML

Typename O nome do tipo da classe. Para fazer referência ao Type nome da classe , use as Extensões de Marcação e o XAML do WPF.

Aplica-se a