Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

TemplateBindingExtension-Klasse

 

Veröffentlicht: Oktober 2016

Implementiert eine Markuperweiterung, die die Bindung zwischen dem Wert einer Eigenschaft in einer Vorlage und der Wert einer anderen verfügbar gemachten Eigenschaft des Steuerelements mit Vorlagen unterstützt.

Namespace:   System.Windows
Assembly:  PresentationFramework (in PresentationFramework.dll)

System.Object
  System.Windows.Markup.MarkupExtension
    System.Windows.TemplateBindingExtension

[TypeConverterAttribute(typeof(TemplateBindingExtensionConverter))]
[MarkupExtensionReturnTypeAttribute(typeof(object))]
public class TemplateBindingExtension : MarkupExtension

NameBeschreibung
System_CAPS_pubmethodTemplateBindingExtension()

Initialisiert eine neue Instanz der TemplateBindingExtension-Klasse.

System_CAPS_pubmethodTemplateBindingExtension(DependencyProperty)

Initialisiert eine neue Instanz der TemplateBindingExtension-Klasse mit der angegebenen Abhängigkeitseigenschaft, die die Quelle der Bindung darstellt.

NameBeschreibung
System_CAPS_pubpropertyConverter

Ruft ab oder legt den Konverter, der zwischen Quelle und Ziel einer Bindung interpretiert.

System_CAPS_pubpropertyConverterParameter

Ruft ab oder legt den Parameter an den Konverter übergeben.

System_CAPS_pubpropertyProperty

Ruft ab oder legt die Eigenschaft an.

NameBeschreibung
System_CAPS_pubmethodEquals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.(Geerbt von „Object“.)

System_CAPS_protmethodFinalize()

Gibt einem Objekt Gelegenheit, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Geerbt von „Object“.)

System_CAPS_pubmethodGetHashCode()

Fungiert als die Standardhashfunktion.(Geerbt von „Object“.)

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von „Object“.)

System_CAPS_protmethodMemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.(Geerbt von „Object“.)

System_CAPS_pubmethodProvideValue(IServiceProvider)

Gibt ein Objekt, das als Wert für die Eigenschaft für diese Markuperweiterung festgelegt werden soll. Für TemplateBindingExtension, ist dies ein Ausdruck (TemplateBindingExpression), die die Bindung unterstützt.(Überschreibt MarkupExtension.ProvideValue(IServiceProvider).)

System_CAPS_pubmethodToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.(Geerbt von „Object“.)

Verwenden Sie TemplateBinding in der Vorlage auf einen Wert für das Steuerelement binden, die die Vorlage angewendet wird. Ein TemplateBinding ist effizienter als eine Binding aber weniger Funktionen. Mithilfe einer TemplateBinding ist äquivalent zur Verwendung einer Binding mit der RelativeSource -Eigenschaft auf festgelegt RelativeSource.TemplatedParent.

Für XAML Informationen finden Sie unter TemplateBinding-Markuperweiterung.

Das folgende Beispiel zeigt eine ControlTemplate definiert eine ListBox die horizontal ist und abgerundete Ecken aufweist. Die TemplateBinding Gibt an, dass die Background von der Border synchronisiert werden sollen, mit der Background Wert ab, der auf die ListBox. Verwenden Sie TemplateBinding in Ihrem ControlTemplate Wenn dem Benutzer des Steuerelements die Kontrolle über die Werte bestimmter Eigenschaften gewährt werden soll. Eine Beschreibung dieses Beispiels finden Sie unter von Formaten und Vorlagen.

Das folgende Beispiel zeigt die ControlTemplate von den Label Steuerelement. Die HorizontalAlignment und VerticalAlignment auf die Werte der Eigenschaften gebunden sind die HorizontalContentAlignment und VerticalContentAlignment Eigenschaften der Label steuern, die von diesem ControlTemplate auf angewendet wird.

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

.NET Framework
Verfügbar seit 3.0

Alle öffentlichen statischen Member ( Shared in Visual Basic) dieses Typs sind threadsicher. Die Threadsicherheit für Instanzmember ist nicht garantiert.

Zurück zum Anfang
Anzeigen: