Clase Setter

Setter Class

Aplica un valor a una propiedad de un objeto Style.

Herencia

Object
  DependencyObject
    SetterBase
      Setter

Sintaxis


public sealed class Setter : SetterBase

Atributos

[MarshalingBehavior(Agile)]
[Threading(Both)]
[Version(0x06020000)]
[WebHostHidden()]

Members

A continuación se indican los tipos de miembros de Setter (Clase):

Constructores

A continuación se indican los constructores de Setter (Clase).

ConstructorDescripción
Setter() Initializes a new instance of the Setter class with no initial Property or Value.
Setter(DependencyProperty, Object) Initializes a new instance of the Setter class with initial Property and Value information.

 

Métodos

The Setter Clase tiene estos métodos. También hereda métodos de Object Clase.

MétodoDescripción
ClearValue Clears the local value of a dependency property. (Se hereda de DependencyObject)
GetAnimationBaseValue Returns any base value established for a dependency property, which would apply in cases where an animation is not active. (Se hereda de DependencyObject)
GetValue Returns the current effective value of a dependency property from a DependencyObject. (Se hereda de DependencyObject)
ReadLocalValue Returns the local value of a dependency property, if a local value is set. (Se hereda de DependencyObject)
SetValue Sets the local value of a dependency property on a DependencyObject. (Se hereda de DependencyObject)

 

Propiedades

SetterClase tiene estas propiedades.

PropiedadTipo de accesoDescripción

Dispatcher

De sólo lecturaGets the CoreDispatcher that this object is associated with. (Se hereda de DependencyObject)

IsSealed

De sólo lecturaGets a value that indicates whether this object is in an immutable state. (Se hereda de SetterBase)

Property

Lectura/escrituraGets or sets the property to apply the Value to.

Value

Lectura/escrituraGets or sets the value to apply to the property that is specified by the Setter.

 

Comentarios

Debe especificar las propiedades Property y Value en un Setter. De lo contrario, se produce una excepción (una excepción de análisis o un error en tiempo de ejecución, dependiendo de si el objeto Setter se crea en XAML o se modifica en el código).

Si tiene acceso a una instancia de Setter mediante código, no puede cambiar el valor de ninguna propiedad de una instancia de Setter si el valor de la propiedad IsSealed de un objeto Style primario es true. Esto también lo notifica la propiedad IsSealed en un Setter individual. El sistema establece estas propiedades en true cuando el runtime aplica estilos a los elementos de la interfaz de usuario y los muestra en ella. Se producirá un error de tiempo de ejecución si intenta cambiar una clase Setter sellada.

Notas sobre la migración

  • Windows Presentation Foundation (WPF) y Microsoft Silverlight admitían la posibilidad de utilizar una expresión Binding para proporcionar el Value para Setter en Style. Windows en tiempo de ejecución no es compatible con el uso de Binding para Setter.Value (el objeto Binding no se evaluará y Setter no tiene ningún efecto; no obtendrá errores, pero tampoco obtendrá el resultado deseado). Al convertir estilos XAML de WPF o Silverlight XAML, reemplace cualquier uso de expresiones Binding con cadenas u objetos que establecen valores, o refactorice los valores como valores StaticResource compartidos en lugar de valores obtenidos de Binding.

Ejemplos

Este ejemplo crea dos estilos: uno para TextBlock y el otro para TextBox. El estilo de TextBlock establece las propiedades Foreground, FontSize y VerticalAlignment. El estilo de TextBox establece las propiedades Width, Height, Margin, Background y FontSize. Cada estilo se aplica a dos instancias de un control para crear una apariencia uniforme para cada TextBlock y TextBox.


<StackPanel>
  <StackPanel.Resources>
    <!--Create a Style for a TextBlock to specify that the
              Foreground equals Navy, FontSize equals 14, and
              VerticalAlignment equals Botton.-->
    <Style TargetType="TextBlock" x:Key="TextBlockStyle">
      <Setter Property="Foreground" Value="Navy"/>
      <Setter Property="FontSize" Value="14"/>
      <Setter Property="VerticalAlignment" Value="Bottom"/>
    </Style>

    <!--Create a Style for a TextBlock that specifies that
              the Width is 200, Height is 20, Margin is 4,
              Background is LightBlue, and FontSize is 14.-->
    <Style TargetType="TextBox" x:Key="TextBoxStyle">
      <Setter Property="Width" Value="200"/>
      <Setter Property="Height" Value="30"/>
      <Setter Property="Margin" Value="4"/>
      <Setter Property="FontSize" Value="14"/>
      <Setter Property="Background">
        <Setter.Value>
          <LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
            <GradientStop Color="White" Offset="0.0"/>
            <GradientStop Color="LightBlue" Offset="0.5"/>
            <GradientStop Color="Navy" Offset="1"/>
          </LinearGradientBrush>
        </Setter.Value>
      </Setter>
    </Style>
  </StackPanel.Resources>

  <!--Apply the TextBlockStyle and TextBoxStyle to each 
          TextBlock and TextBox, respectively.-->
  <StackPanel Orientation="Horizontal">
    <TextBlock Style="{StaticResource TextBlockStyle}">
              First Name:
          </TextBlock>
    <TextBox Style="{StaticResource TextBoxStyle}"/>
  </StackPanel>
  <StackPanel Orientation="Horizontal">
    <TextBlock Style="{StaticResource TextBlockStyle}">
              Last Name:
          </TextBlock>
    <TextBox Style="{StaticResource TextBoxStyle}"  
                   Margin="6,4,4,4"/>
  </StackPanel>
</StackPanel>


Requisitos

Cliente mínimo admitido

Windows 8 [Solo aplicaciones de la Tienda Windows]

Servidor mínimo admitido

Windows Server 2012 [Solo aplicaciones de la Tienda Windows]

Espacio de nombres

Windows.UI.Xaml
Windows::UI::Xaml [C++]

Metadatos

Windows.winmd

Vea también

SetterBase
Migrar XAML/código de Silverlight o WPF a una aplicación de la Tienda Windows

 

 

Mostrar:
© 2017 Microsoft