DependencyObject.SetValue DependencyObject.SetValue DependencyObject.SetValue DependencyObject.SetValue Method

Definición

Establece el valor local de una propiedad de dependencia.Sets the local value of a dependency property.

Sobrecargas

SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object)

Establece el valor local de una propiedad de dependencia, especificado mediante el identificador de la propiedad de dependencia.Sets the local value of a dependency property, specified by its dependency property identifier.

SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object)

Establece el valor local de una propiedad de dependencia de solo lectura, especificado por el identificador DependencyPropertyKey de la propiedad de dependencia.Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property.

SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object)

Establece el valor local de una propiedad de dependencia, especificado mediante el identificador de la propiedad de dependencia.Sets the local value of a dependency property, specified by its dependency property identifier.

public:
 void SetValue(System::Windows::DependencyProperty ^ dp, System::Object ^ value);
public void SetValue (System.Windows.DependencyProperty dp, object value);
member this.SetValue : System.Windows.DependencyProperty * obj -> unit
Public Sub SetValue (dp As DependencyProperty, value As Object)

Parámetros

dp
DependencyProperty DependencyProperty DependencyProperty DependencyProperty

Identificador de la propiedad de dependencia que se va a establecer.The identifier of the dependency property to set.

value
Object Object Object Object

Nuevo valor local.The new local value.

Excepciones

Se intentó modificar una propiedad de dependencia de sólo lectura o una propiedad en un DependencyObject sellado.Attempted to modify a read-only dependency property, or a property on a sealed DependencyObject.

value no era el tipo correcto registrado para la propiedad dp.value was not the correct type as registered for the dp property.

Comentarios

Si el tipo proporcionado no coincide con el tipo declarado para la propiedad de dependencia tal y como se registró originalmente, se produce una excepción.If the provided type does not match the type that is declared for the dependency property as it was originally registered, an exception is thrown. Siempre value se debe proporcionar el parámetro como el tipo adecuado.The value parameter should always be provided as the appropriate type.

Las condiciones de excepción pueden verse afectadas por ValidateValueCallback la devolución de llamada que existe en el identificador de la propiedad de dependencia de la propiedad de dependencia que se establece.The exception conditions are potentially influenced by the ValidateValueCallback callback that exists on the dependency property identifier of the dependency property being set. De lo contrario, es posible que el valor proporcionado produzca errores en las condiciones generales de comprobación de tipos (por ejemplo, al pasar una cadena cuando el tipo nativo sea Double).Otherwise, the value provided might be failing general type-checking conditions (for example, passing a string when the native type is Double).

SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object)

Establece el valor local de una propiedad de dependencia de solo lectura, especificado por el identificador DependencyPropertyKey de la propiedad de dependencia.Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property.

public:
 void SetValue(System::Windows::DependencyPropertyKey ^ key, System::Object ^ value);
public void SetValue (System.Windows.DependencyPropertyKey key, object value);
member this.SetValue : System.Windows.DependencyPropertyKey * obj -> unit
Public Sub SetValue (key As DependencyPropertyKey, value As Object)

Parámetros

key
DependencyPropertyKey DependencyPropertyKey DependencyPropertyKey DependencyPropertyKey

Identificador DependencyPropertyKey de la propiedad que se va a establecer.The DependencyPropertyKey identifier of the property to set.

value
Object Object Object Object

Nuevo valor local.The new local value.

Ejemplos

En el ejemplo siguiente se define una propiedad de dependencia de solo lectura, public static readonly junto con un DependencyProperty que proporciona la exposición de solo lectura necesaria a los consumidores de propiedades y CLRCLR el descriptor de acceso get para el contenedor.The following example defines a read-only dependency property, along with a public static readonly DependencyProperty that provides necessary read-only exposure to property consumers, and the get accessor for the CLRCLR wrapper.

internal static readonly DependencyPropertyKey AquariumSizeKey = DependencyProperty.RegisterReadOnly(
  "AquariumSize",
  typeof(double),
  typeof(Aquarium),
  new PropertyMetadata(double.NaN)
);
public static readonly DependencyProperty AquariumSizeProperty =
  AquariumSizeKey.DependencyProperty;
public double AquariumSize
{
  get { return (double)GetValue(AquariumSizeProperty); }
}
Friend Shared ReadOnly AquariumSizeKey As DependencyPropertyKey = DependencyProperty.RegisterReadOnly("AquariumSize", GetType(Double), GetType(Aquarium), New PropertyMetadata(Double.NaN))
Public Shared ReadOnly AquariumSizeProperty As DependencyProperty = AquariumSizeKey.DependencyProperty
Public ReadOnly Property AquariumSize() As Double
    Get
        Return CDbl(GetValue(AquariumSizeProperty))
    End Get
End Property

Comentarios

Esta firma se utiliza generalmente cuando se establecen valores para las propiedades de dependencia de solo lectura definidas por las clases personalizadas.This signature is generally used when you set values for read-only dependency properties that are defined by your custom classes. Generalmente, SetValue solo se llama desde el tipo que registró esa propiedad de dependencia, que implementa la lógica interna que proporciona el valor determinado para la propiedad de dependencia.Generally, SetValue is called only from the type that registered that dependency property, which implements the internal logic that provides the determined value for the dependency property. Para obtener más información, consulte Propiedades de dependencia de solo lectura.For more information, see Read-Only Dependency Properties.

Si el tipo proporcionado no coincide con el tipo declarado para la propiedad de dependencia tal y como se registró originalmente, se produce una excepción.If the provided type does not match the type that is declared for the dependency property as it was originally registered, an exception is thrown. Siempre value se debe proporcionar el parámetro como el tipo adecuado.The value parameter should always be provided as the appropriate type. Las condiciones de excepción pueden verse afectadas por ValidateValueCallback la devolución de llamada que existe en el identificador de la propiedad de dependencia de la propiedad de dependencia que se establece.The exception conditions are potentially influenced by the ValidateValueCallback callback that exists on the dependency property identifier of the dependency property being set.

Se aplica a