DependencyObject.SetValue Método

Definição

Define o valor local de uma propriedade de dependência.

Sobrecargas

SetValue(DependencyProperty, Object)

Define o valor local de uma propriedade de dependência, especificada pelo identificador da propriedade de dependência.

SetValue(DependencyPropertyKey, Object)

Define o valor de uma propriedade de dependência somente leitura, especificada pelo identificador DependencyPropertyKey da propriedade de dependência.

SetValue(DependencyProperty, Object)

Define o valor local de uma propriedade de dependência, especificada pelo identificador da propriedade de dependência.

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

O identificador da propriedade de dependência a ser definida.

value
Object

O novo valor local.

Exceções

Houve uma tentativa de modificar uma propriedade de dependência somente leitura ou uma propriedade em um DependencyObject lacrado.

value não era do tipo correto conforme registrado para a propriedade dp.

Comentários

Se o tipo fornecido não corresponder ao tipo declarado para a propriedade de dependência como foi originalmente registrado, uma exceção será gerada. O value parâmetro deve sempre ser fornecido como o tipo apropriado.

As condições de exceção são potencialmente influenciadas pelo ValidateValueCallback retorno de chamada que existe no identificador de propriedade de dependência da propriedade de dependência que está sendo definida. Caso contrário, o valor fornecido pode estar falhando nas condições gerais de verificação de tipo (por exemplo, passando uma cadeia de caracteres quando o tipo nativo é Duplo).

Aplica-se a

SetValue(DependencyPropertyKey, Object)

Define o valor de uma propriedade de dependência somente leitura, especificada pelo identificador DependencyPropertyKey da propriedade de dependência.

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

O identificador DependencyPropertyKey da propriedade a ser definido.

value
Object

O novo valor local.

Exemplos

O exemplo a seguir define uma propriedade de dependência somente leitura, juntamente com uma public static readonly DependencyProperty que fornece a exposição somente leitura necessária aos consumidores de propriedades e o acessador get para o wrapper CLR.

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

Comentários

Essa assinatura geralmente é usada quando você define valores para propriedades de dependência somente leitura definidas por suas classes personalizadas. Geralmente, SetValue é chamado somente do tipo que registrou essa propriedade de dependência, que implementa a lógica interna que fornece o valor determinado para a propriedade de dependência. Para obter mais informações, consulte Propriedades de dependência somente leitura.

Se o tipo fornecido não corresponder ao tipo declarado para a propriedade de dependência como foi originalmente registrado, uma exceção será gerada. O value parâmetro deve sempre ser fornecido como o tipo apropriado. As condições de exceção são potencialmente influenciadas pelo ValidateValueCallback retorno de chamada que existe no identificador de propriedade de dependência da propriedade de dependência que está sendo definida.

Aplica-se a