TemplateBindingExtension Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Implementál egy korrektúrakiterjesztést, amely támogatja a sablonban lévő tulajdonság értéke és a sablonalapú vezérlő más közzétett tulajdonságának értéke közötti kötést.
public ref class TemplateBindingExtension : System::Windows::Markup::MarkupExtension
[System.ComponentModel.TypeConverter(typeof(System.Windows.TemplateBindingExtensionConverter))]
public class TemplateBindingExtension : System.Windows.Markup.MarkupExtension
[System.ComponentModel.TypeConverter(typeof(System.Windows.TemplateBindingExtensionConverter))]
[System.Windows.Markup.MarkupExtensionReturnType(typeof(System.Object))]
public class TemplateBindingExtension : System.Windows.Markup.MarkupExtension
[<System.ComponentModel.TypeConverter(typeof(System.Windows.TemplateBindingExtensionConverter))>]
type TemplateBindingExtension = class
inherit MarkupExtension
[<System.ComponentModel.TypeConverter(typeof(System.Windows.TemplateBindingExtensionConverter))>]
[<System.Windows.Markup.MarkupExtensionReturnType(typeof(System.Object))>]
type TemplateBindingExtension = class
inherit MarkupExtension
Public Class TemplateBindingExtension
Inherits MarkupExtension
- Öröklődés
- Attribútumok
Példák
Az alábbi példa egy ControlTemplate vízszintes és lekerekített sarkokat definiáló ListBox példát mutat be. Ez TemplateBinding azt jelzi, hogy az Background értékeket Border szinkronizálni kell a Background megadott ListBoxértékkel. Akkor használja TemplateBinding a felhasználót ControlTemplate , ha meg szeretné adni a felhasználónak a vezérlést bizonyos tulajdonságok értékei felett. A példáról a Stílus és a Templating című témakörben olvashat bővebben.
<Style TargetType="ListBox">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListBox">
<Border CornerRadius="5" Background="{TemplateBinding ListBox.Background}">
<ScrollViewer HorizontalScrollBarVisibility="Auto">
<StackPanel Orientation="Horizontal"
VerticalAlignment="Center"
HorizontalAlignment="Center"
IsItemsHost="True"/>
</ScrollViewer>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Az alábbi példa a ControlTemplate vezérlőt Label mutatja be. A HorizontalAlignment tulajdonságok és VerticalAlignment a tulajdonságok a vezérlő azon értékeihez HorizontalContentAlignment és VerticalContentAlignment tulajdonságaihoz Label vannak kötve, amelyekre ez ControlTemplate vonatkozik.
<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>
Megjegyzések
TemplateBinding A sablon használatával kötést hozhat létre egy olyan értékhez, amelyen a sablont alkalmazza a rendszer. Az A TemplateBinding hatékonyabb, mint egy Binding , de kevesebb funkcióval rendelkezik. Az a TemplateBinding tulajdonság használata Binding egyenértékű a következő tulajdonsággal RelativeSourceRelativeSource.TemplatedParent: .
XAML-szöveghasználat
Az XAML-információkért lásd: TemplateBinding Markup Extension.
Konstruktorok
| Name | Description |
|---|---|
| TemplateBindingExtension() |
Inicializálja a TemplateBindingExtension osztály új példányát. |
| TemplateBindingExtension(DependencyProperty) |
Inicializálja az TemplateBindingExtension osztály új példányát a kötés forrásaként megadott függőségi tulajdonsággal. |
Tulajdonságok
| Name | Description |
|---|---|
| Converter |
Lekéri vagy beállítja a kötés forrása és célja között értelmező konvertert. |
| ConverterParameter |
Lekéri vagy beállítja a paramétert a konverternek való továbbításhoz. |
| Property |
Lekéri vagy beállítja a kötve lévő tulajdonságot. |
Metódusok
| Name | Description |
|---|---|
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| ProvideValue(IServiceProvider) |
Egy olyan objektumot ad vissza, amelyet a célobjektum tulajdonságának értékeként kell beállítani ehhez a korrektúrakiterjesztéshez. Ez TemplateBindingExtensiona kifejezés (TemplateBindingExpression) támogatja a kötést. |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |