Setter.Value Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
public:
property Platform::Object ^ Value { Platform::Object ^ get(); void set(Platform::Object ^ value); };
IInspectable Value();
void Value(IInspectable value);
public object Value { get; set; }
var object = setter.value;
setter.value = object;
Public Property Value As Object
<Setter ...>
<Setter.Value>
objectValue
</Setter.Value>
</Setter>
- or -
<Setter Value="attributeValue"/>
-or-
<Setter Value="extensionUsage"/>
Valor de propiedad
Valor que se va a aplicar a la propiedad especificada por setter.
Comentarios
Como puedes ver en la sintaxis XAML, hay varias maneras de especificar para Value
un establecedor en XAML:
- Como atributo, mediante un valor de cadena. Este valor de cadena se puede convertir implícitamente en un tipo específico de propiedad para casos simples, como establecer valores numéricos, valores con nombre de una enumeración o un identificador uniforme de recursos (URI).
- Como un nuevo objeto completo que se declara en la sintaxis del elemento de objeto XAML, y el elemento de objeto se anida dentro de un uso de elemento de propiedad.
- Como atributo que tiene un uso de extensión de marcado {StaticResource} entre comillas. Normalmente, el tipo de valor de la propiedad determina qué sintaxis es adecuada. Para obtener más información sobre los usos de XAML, consulta Introducción a XAML o Guía de sintaxis XAML. Puedes usar la sintaxis de atributo para la mayoría de las propiedades de la interfaz de usuario XAML y las propiedades de la interfaz de usuario que requieren específicamente un uso de elementos de propiedad o una referencia de recursos son menos comunes. Un uso de extensión de marcado {StaticResource} puede ser adecuado incluso para cadenas o valores numéricos si esos valores son compartidos por más de un estilo o propiedad.
Debe especificar la propiedad y Value
las propiedades en un establecedor. De lo contrario, se produce una excepción (ya sea una excepción de análisis o un error en tiempo de ejecución, en función de si 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 Setter
instancia si el valor de la propiedad IsSealed en un style primario es true
. Esto también se notifica mediante la propiedad IsSealed en un individuo Setter
. El sistema establece estas propiedades en true
cuando el tiempo de ejecución aplica estilos a los elementos de la interfaz de usuario y los muestra en la interfaz de usuario. Si se intenta cambiar un sellado Setter
, se produce un error en tiempo de ejecución.
Estilos y plantillas
Puede usar un establecedor en un estilo para aplicar valores a cualquier propiedad de dependencia. Pero es para la Setter
propiedad Template de una clase derivada de Control que constituye la mayoría del marcado XAML en un típico Style
. El Value
para un Setter
con Property="Template"
casi siempre se especifica como un elemento de propiedad que contiene un elemento de objeto ControlTemplate .
Cuando se usa un estilo para definir una plantilla de control, targetType del Style
elemento y targetType del elemento ControlTemplate para su establecedor Control.Template siempre debe usar el mismo valor.
El establecedor de plantillas define la definición de interfaz de usuario de plantilla básica para una instancia de control en la que se aplica esa plantilla. También contiene los estados visuales de un control y otras definiciones de interfaz de usuario basadas en estado, como transiciones de tema predeterminadas. Para un control complejo, como ListBox, la plantilla predeterminada Style y controlTemplate dentro pueden tener cientos de líneas de XAML. Para obtener más información sobre el rol de en escenarios de plantillas de Style
control, consulta Plantillas de control XAML.