Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original
Este tema aún no ha recibido ninguna valoración - Valorar este tema

TemplateBindingExtension (Clase)

Implementa una extensión de marcado que admite el enlace entre el valor de una propiedad en una plantilla y el valor de alguna otra propiedad expuesta en el control con plantilla.

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

Espacio de nombres:  System.Windows
Ensamblado:  PresentationFramework (en PresentationFramework.dll)
XMLNS para XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation
[TypeConverterAttribute(typeof(TemplateBindingExtensionConverter))]
[MarkupExtensionReturnTypeAttribute(typeof(Object))]
public class TemplateBindingExtension : MarkupExtension
Para obtener información de XAML , vea Extensión de marcado TemplateBinding.

El tipo TemplateBindingExtension expone los siguientes miembros.

  NombreDescripción
Método públicoTemplateBindingExtension()Inicializa una nueva instancia de la clase de TemplateBindingExtension .
Método públicoTemplateBindingExtension(DependencyProperty)Inicializa una nueva instancia de la clase de TemplateBindingExtension con propiedad de dependencia especificado que es el origen del enlace.
Arriba
  NombreDescripción
Propiedad públicaConverterObtiene o establece el convertidor que interpreta entre el origen y el destino de un enlace.
Propiedad públicaConverterParameterObtiene o establece el parámetro para pasar el convertidor.
Propiedad públicaPropertyObtiene o establece la propiedad que está enlazado a.
Arriba
  NombreDescripción
Método públicoEquals(Object)Determina si el objeto especificado es igual al objeto actual. (Se hereda de Object).
Método protegidoFinalize Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object).
Método públicoGetHashCodeActúa como función hash para un tipo concreto. (Se hereda de Object).
Método públicoGetTypeObtiene el objeto Type de la instancia actual. (Se hereda de Object).
Método protegidoMemberwiseClone Crea una copia superficial del Object actual. (Se hereda de Object).
Método públicoProvideValueDevuelve un objeto que se debe establecer como el valor de la propiedad del objeto de destino para esta extensión de marcado. Para TemplateBindingExtension, es una expresión (TemplateBindingExpression) que admite el enlace. (Invalida a MarkupExtension.ProvideValue(IServiceProvider)).
Método públicoToStringDevuelve una cadena que representa el objeto actual. (Se hereda de Object).
Arriba

Utiliza TemplateBinding en plantilla para enlazar a un valor en el control que la plantilla se aplica a. TemplateBinding es más eficaz que Binding pero tiene menos funcionalidad. Mediante TemplateBinding equivale a utilizar Binding con la propiedad de RelativeSource establecida en RelativeSource.TemplatedParent.

El ejemplo siguiente se muestra ControlTemplate que define ListBox que es horizontal y tiene las esquinas redondeadas. TemplateBinding indica que Background de Border se debe sincronizar con el valor de Background que se establece en ListBox. Utiliza TemplateBinding en ControlTemplate si desea ofrecer al usuario del control el control sobre los valores de ciertas propiedades. Para una explicación de este ejemplo, vea Aplicar estilos y plantillas.


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


El ejemplo siguiente se muestra ControlTemplate de control de Label . Las propiedades de HorizontalAlignment y de VerticalAlignment se enlazan a valores de HorizontalContentAlignment y las propiedades de VerticalContentAlignment de Label controlan que este ControlTemplate se aplica a.


<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

Compatible con: 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.
Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.
¿Te ha resultado útil?
(Caracteres restantes: 1500)

Adiciones de comunidad

AGREGAR
© 2013 Microsoft. Reservados todos los derechos.