TemplateBindingExtension Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Implementuje rozšíření značek, které podporuje vazbu mezi hodnotou vlastnosti v šabloně a hodnotou některé jiné vystavené vlastnosti v ovládacím prvku šablony.
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
- Dědičnost
- Atributy
Příklady
Následující příklad ukazuje ControlTemplate , že definuje vodorovnou ListBox a zaoblenou rohy. Indikuje TemplateBinding
, že Background Border by měla být synchronizována s hodnotou nastavenou Background na ListBox. TemplateBinding
Používáte ji, ControlTemplate když chcete uživateli udělit kontrolu nad hodnotami určitých vlastností. Diskuzi o tomto příkladu najdete v tématu Styling a Šablonování.
<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>
Následující příklad ukazuje ControlTemplate ovládací prvek Label . Vlastnosti HorizontalAlignment jsou VerticalAlignment vázány na hodnoty HorizontalContentAlignment a VerticalContentAlignment vlastnosti Label ovládacího prvku, na který je ControlTemplate použit.
<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>
Poznámky
Pomocí TemplateBinding
šablony můžete vytvořit vazbu na hodnotu ovládacího prvku, na který se šablona použije. A TemplateBinding
je efektivnější než funkce Binding , ale má méně funkcí. TemplateBinding
Použití je ekvivalentní použití Binding s vlastností nastavenou RelativeSource na RelativeSource.TemplatedParent.
Použití textu XAML
Informace o XAML naleznete v tématu TemplateBinding Markup Extension.
Konstruktory
TemplateBindingExtension() |
Inicializuje novou instanci TemplateBindingExtension třídy. |
TemplateBindingExtension(DependencyProperty) |
Inicializuje novou instanci TemplateBindingExtension třídy se zadanou závislost vlastnost, která je zdrojem vazby. |
Vlastnosti
Converter |
Získá nebo nastaví převaděč, který interpretuje mezi zdrojem a cílem vazby. |
ConverterParameter |
Získá nebo nastaví parametr pro předání převaděči. |
Property |
Získá nebo nastaví vlastnost, která je vázána. |
Metody
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
GetType() |
Type Získá aktuální instanci. (Zděděno od Object) |
MemberwiseClone() |
Vytvoří použádnou kopii aktuálního souboru Object. (Zděděno od Object) |
ProvideValue(IServiceProvider) |
Vrátí objekt, který by měl být nastaven jako hodnota vlastnosti cílového objektu pro toto rozšíření značek. Jedná TemplateBindingExtensionse o výraz (TemplateBindingExpression), který podporuje vazbu. |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |