DependencyObject.SetValue Metoda

Definicja

Ustawia wartość lokalną właściwości zależności.

Przeciążenia

SetValue(DependencyProperty, Object)

Ustawia wartość lokalną właściwości zależności określonej przez jego identyfikator właściwości zależności.

SetValue(DependencyPropertyKey, Object)

Ustawia wartość lokalną właściwości zależności tylko do odczytu określona przez DependencyPropertyKey identyfikator właściwości zależności.

SetValue(DependencyProperty, Object)

Ustawia wartość lokalną właściwości zależności określonej przez jego identyfikator właściwości zależności.

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)

Parametry

dp
DependencyProperty

Identyfikator właściwości zależności do ustawienia.

value
Object

Nowa wartość lokalna.

Wyjątki

Podjęto próbę zmodyfikowania właściwości zależności tylko do odczytu lub właściwości w zapieczętowanym DependencyObjectobiekcie .

value nie był poprawnym typem zarejestrowanym dla dp właściwości.

Uwagi

Jeśli podany typ nie jest zgodny z typem zadeklarowanym dla właściwości zależności, ponieważ został pierwotnie zarejestrowany, zgłaszany jest wyjątek. Parametr value powinien być zawsze podany jako odpowiedni typ.

Warunki wyjątku mogą mieć wpływ na ValidateValueCallback wywołanie zwrotne, które istnieje na identyfikator właściwości zależności ustawionej właściwości zależności. W przeciwnym razie podana wartość może zakończyć się niepowodzeniem ogólnych warunków sprawdzania typów (na przykład przekazanie ciągu, gdy typ natywny ma wartość Double).

Dotyczy

SetValue(DependencyPropertyKey, Object)

Ustawia wartość lokalną właściwości zależności tylko do odczytu określona przez DependencyPropertyKey identyfikator właściwości zależności.

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)

Parametry

key
DependencyPropertyKey

DependencyPropertyKey Identyfikator właściwości do ustawienia.

value
Object

Nowa wartość lokalna.

Przykłady

W poniższym przykładzie zdefiniowano właściwość zależności tylko do odczytu wraz z elementem public static readonlyDependencyProperty , który zapewnia niezbędną ekspozycję tylko do odczytu dla odbiorców właściwości oraz metodę uzyskiwania dostępu do otoki 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

Uwagi

Ten podpis jest zwykle używany podczas ustawiania wartości właściwości zależności tylko do odczytu zdefiniowanych przez klasy niestandardowe. Ogólnie rzecz biorąc, SetValue jest wywoływany tylko z typu, który zarejestrował tę właściwość zależności, która implementuje wewnętrzną logikę, która dostarcza określoną wartość dla właściwości zależności. Aby uzyskać więcej informacji, zobacz Właściwości zależności tylko do odczytu.

Jeśli podany typ nie jest zgodny z typem zadeklarowanym dla właściwości zależności, ponieważ został pierwotnie zarejestrowany, zgłaszany jest wyjątek. Parametr value powinien być zawsze podany jako odpowiedni typ. Warunki wyjątku mogą mieć wpływ na ValidateValueCallback wywołanie zwrotne, które istnieje na identyfikator właściwości zależności ustawionej właściwości zależności.

Dotyczy