Condividi tramite


ControlTemplate.TargetType Proprietà

Definizione

Ottiene o imposta il tipo per cui l'oggetto ControlTemplate è destinato.

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

Valore della proprietà

Il valore predefinito è null.

Attributi

Eccezioni

La proprietà TargetType non deve essere null se la definizione del modello ha un ContentPresenter.

I tipi specificati non sono validi. Il TargetType di un ControlTemplate deve essere o ereditare da un Control, un Page o un PageFunctionBase.

Esempio

Nell'esempio seguente viene illustrato l'uso di questa proprietà:

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

Nell'esempio precedente viene usata la risorsa seguente:

Per l'esempio completo, vedere Esempio di applicazione di stili con ControlTemplates.

Commenti

Se si dispone di un oggetto autonomo ControlTemplate nella sezione risorse con la proprietà impostata su un tipo, l'oggetto TargetTypeControlTemplate non viene applicato automaticamente a tale tipo. È invece necessario specificare e x:Key applicare in modo esplicito il modello.

Si noti anche che la proprietà è necessaria in un ControlTemplate se la TargetType definizione del modello contiene un ContentPresenteroggetto .

Uso della sintassi XAML per gli attributi

<object  TargetType="typeName"/>

Valori XAML

Typename Nome del tipo della classe. Per fare riferimento al Type nome della classe, usare le estensioni di markup e XAML WPF.

Si applica a