DependencyObject DependencyObject DependencyObject DependencyObject Class

Definition

Stellt ein Objekt dar, das am System der Abhängigkeitseigenschaften teilnimmt.Represents an object that participates in the dependency property system.

public ref class DependencyObject : System::Windows::Threading::DispatcherObject
[System.Windows.Markup.NameScopeProperty("NameScope", typeof(System.Windows.NameScope))]
public class DependencyObject : System.Windows.Threading.DispatcherObject
type DependencyObject = class
    inherit DispatcherObject
Public Class DependencyObject
Inherits DispatcherObject
Vererbung
DependencyObjectDependencyObjectDependencyObjectDependencyObject
Abgeleitet
Attribute

Beispiele

Im folgenden Beispiel wird von DependencyObject abgeleitet, um eine neue abstrakte Klasse zu erstellen.The following example derives from DependencyObject to create a new abstract class. Die Klasse registriert dann eine angefügte Eigenschaft und enthält Unterstützungs Member für diese angefügte Eigenschaft.The class then registers an attached property and includes support members for that attached property.

public abstract class AquariumObject3 : DependencyObject
{
    public enum Bouyancy
    {
        Floats,
        Sinks,
        Drifts
    }
    public static readonly DependencyProperty BouyancyProperty = DependencyProperty.RegisterAttached(
      "Bouyancy",
      typeof(Bouyancy),
      typeof(AquariumObject3),
      new FrameworkPropertyMetadata(Bouyancy.Floats, FrameworkPropertyMetadataOptions.AffectsArrange),
      new ValidateValueCallback(ValidateBouyancy)
    );
    public static void SetBouyancy(UIElement element, Bouyancy value)
    {
        element.SetValue(BouyancyProperty, value);
    }
    public static Bouyancy GetBouyancy(UIElement element)
    {
        return (Bouyancy)element.GetValue(BouyancyProperty);
    }
    private static bool ValidateBouyancy(object value)
    {
        Bouyancy bTest = (Bouyancy) value;
        return (bTest == Bouyancy.Floats || bTest == Bouyancy.Drifts || bTest==Bouyancy.Sinks);
    }
    public static readonly DependencyProperty IsDirtyProperty = DependencyProperty.Register(
      "IsDirty",
      typeof(Boolean),
      typeof(AquariumObject3)
    );
}
Public MustInherit Class AquariumObject3
    Inherits DependencyObject
    Public Enum Bouyancy
        Floats
        Sinks
        Drifts
    End Enum
    Public Shared ReadOnly BouyancyProperty As DependencyProperty = DependencyProperty.RegisterAttached("Bouyancy", GetType(Bouyancy), GetType(AquariumObject3), New FrameworkPropertyMetadata(Bouyancy.Floats, FrameworkPropertyMetadataOptions.AffectsArrange), New ValidateValueCallback(AddressOf ValidateBouyancy))
    Public Shared Sub SetBouyancy(ByVal element As UIElement, ByVal value As Bouyancy)
        element.SetValue(BouyancyProperty, value)
    End Sub
    Public Shared Function GetBouyancy(ByVal element As UIElement) As Bouyancy
        Return CType(element.GetValue(BouyancyProperty), Bouyancy)
    End Function
    Private Shared Function ValidateBouyancy(ByVal value As Object) As Boolean
        Dim bTest As Bouyancy = CType(value, Bouyancy)
        Return (bTest = Bouyancy.Floats OrElse bTest = Bouyancy.Drifts OrElse bTest = Bouyancy.Sinks)
    End Function
    Public Shared ReadOnly IsDirtyProperty As DependencyProperty = DependencyProperty.Register("IsDirty", GetType(Boolean), GetType(AquariumObject3))
End Class

Hinweise

Die DependencyObject -Klasse Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) aktiviert Eigenschaften Systemdienste für viele abgeleitete Klassen.The DependencyObject class enables Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) property system services on its many derived classes.

Die primäre Funktion des Eigenschaften Systems ist, die Werte von Eigenschaften zu berechnen und System Benachrichtigungen über geänderte Werte bereitzustellen.The property system's primary function is to compute the values of properties, and to provide system notification about values that have changed. Eine andere Schlüssel Klasse, die am Eigenschaften System teilnimmt DependencyProperty, ist.Another key class that participates in the property system is DependencyProperty. DependencyPropertyermöglicht die Registrierung von Abhängigkeits Eigenschaften im Eigenschaften System und stellt Identifizierungs-und Informations Informationen zu den einzelnen Abhängigkeits Eigenschaften bereit, während DependencyObject Objekte mithilfe der-Basisklasse die Abhängigkeits Eigenschaften verwenden können.DependencyProperty enables the registration of dependency properties into the property system, and provides identification and information about each dependency property, whereas DependencyObject as a base class enables objects to use the dependency properties.

DependencyObjectzu den Diensten und Merkmalen zählen die folgenden:DependencyObject services and characteristics include the following:

  • Unterstützung für Abhängigkeits Eigenschaften Hosting.Dependency property hosting support. Sie registrieren eine Abhängigkeits Eigenschaft, indem Register Sie die-Methode aufrufen und den Rückgabewert der Methode als öffentliches statisches Feld in der Klasse speichern.You register a dependency property by calling the Register method, and storing the method's return value as a public static field in your class.

  • Unterstützung für angefügte Eigenschaften Hosting.Attached property hosting support. Sie registrieren eine angefügte Eigenschaft, indem RegisterAttached Sie die-Methode aufrufen und den Rückgabewert der Methode als öffentliches statisches Schreib geschütztes Feld in der Klasse speichern.You register an attached property by calling the RegisterAttached method, and storing the method's return value as a public static read-only field in your class. (Es gibt auch zusätzliche Member-Anforderungen. Beachten Sie, dass WPFWPF dies eine bestimmte Implementierung für angefügte Eigenschaften darstellt.(There are also additional member requirements; note that this represents a WPFWPF specific implementation for attached properties. Weitere Informationen finden Sie unter Übersicht über angefügte Eigenschaften.) Die angefügte-Eigenschaft kann dann für jede Klasse festgelegt werden DependencyObject, die von abgeleitet wird.For details, see Attached Properties Overview.) Your attached property can then be set on any class that derives from DependencyObject.

  • Get-, Set-und Clear-Hilfsprogrammmethoden für Werte aller Abhängigkeits Eigenschaften, DependencyObjectdie im vorhanden sind.Get, set, and clear utility methods for values of any dependency properties that exist on the DependencyObject.

  • Metadaten, coerce-Wert Unterstützung, Benachrichtigung über geänderte Eigenschaften und Überschreiben von Rückrufen für Abhängigkeits Eigenschaften oder angefügte Eigenschaften.Metadata, coerce value support, property changed notification, and override callbacks for dependency properties or attached properties. Außerdem vereinfacht die DependencyObject -Klasse die Eigenschaften Metadaten pro Besitzer für eine Abhängigkeits Eigenschaft.Also, the DependencyObject class facilitates the per-owner property metadata for a dependency property.

  • Eine allgemeine Basisklasse für Klassen, die ContentElementvon Freezable, oder Visualabgeleitet sind.A common base class for classes derived from ContentElement, Freezable, or Visual. (UIElement, eine andere Basiselement Klasse, verfügt über eine Klassenhierarchie, die enthält Visual.)(UIElement, another base element class, has a class hierarchy that includes Visual.)

Konstruktoren

DependencyObject() DependencyObject() DependencyObject() DependencyObject()

Initialisiert eine neue Instanz der DependencyObject-Klasse.Initializes a new instance of the DependencyObject class.

Eigenschaften

DependencyObjectType DependencyObjectType DependencyObjectType DependencyObjectType

Ruft den DependencyObjectType ab, der den CLRCLR-Typ dieser Instanz umschließt.Gets the DependencyObjectType that wraps the CLRCLR type of this instance.

Dispatcher Dispatcher Dispatcher Dispatcher

Ruft den Dispatcher ab, der diesem DispatcherObject zugeordnet ist.Gets the Dispatcher this DispatcherObject is associated with.

(Inherited from DispatcherObject)
IsSealed IsSealed IsSealed IsSealed

Ruft einen Wert ab, der angibt, ob diese Instanz derzeit versiegelt (schreibgeschützt) ist.Gets a value that indicates whether this instance is currently sealed (read-only).

Methoden

CheckAccess() CheckAccess() CheckAccess() CheckAccess()

Bestimmt, ob der aufrufende Thread auf dieses DispatcherObject zugreifen kann.Determines whether the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)
ClearValue(DependencyProperty) ClearValue(DependencyProperty) ClearValue(DependencyProperty) ClearValue(DependencyProperty)

Löscht den lokalen Wert einer Eigenschaft.Clears the local value of a property. Die Eigenschaft, deren Wert gelöscht werden soll, wird durch einen DependencyProperty-Bezeichner angegeben.The property to be cleared is specified by a DependencyProperty identifier.

ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey)

Löscht den lokalen Wert einer schreibgeschützten Eigenschaft.Clears the local value of a read-only property. Die Eigenschaft, deren Wert gelöscht werden soll, wird durch einen DependencyPropertyKey angegeben.The property to be cleared is specified by a DependencyPropertyKey.

CoerceValue(DependencyProperty) CoerceValue(DependencyProperty) CoerceValue(DependencyProperty) CoerceValue(DependencyProperty)

Erzwingt den Wert der angegebenen Abhängigkeitseigenschaft.Coerces the value of the specified dependency property. Dies erfolgt durch den Aufruf einer beliebigen CoerceValueCallback-Funktion, die in den Metadaten für die Abhängigkeitseigenschaft angegeben ist, während sie beim aufrufenden DependencyObject beendet wird.This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob ein angegebenes DependencyObject dem aktuellen DependencyObject entspricht.Determines whether a provided DependencyObject is equivalent to the current DependencyObject.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Ruft einen Hashcode für diesen DependencyObject ab.Gets a hash code for this DependencyObject.

GetLocalValueEnumerator() GetLocalValueEnumerator() GetLocalValueEnumerator() GetLocalValueEnumerator()

Erstellt einen spezialisierten Enumerator, mit dem bestimmt wird, welche Abhängigkeitseigenschaften dieses DependencyObject über lokal festgelegte Werte verfügen.Creates a specialized enumerator for determining which dependency properties have locally set values on this DependencyObject.

GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
GetValue(DependencyProperty) GetValue(DependencyProperty) GetValue(DependencyProperty) GetValue(DependencyProperty)

Gibt den aktuellen effektiven Wert einer Abhängigkeitseigenschaft für diese Instanz eines DependencyObject zurück.Returns the current effective value of a dependency property on this instance of a DependencyObject.

InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty)

Berechnet den effektiven Wert für die angegebene Abhängigkeitseigenschaft neuRe-evaluates the effective value for the specified dependency property

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs)

Wird immer dann aufgerufen, wenn der effektive Wert einer Abhängigkeitseigenschaft für dieses DependencyObject aktualisiert wurde.Invoked whenever the effective value of any dependency property on this DependencyObject has been updated. Die spezifische Abhängigkeitseigenschaft, die sich geändert hat, wird in den Ereignisdaten angegeben.The specific dependency property that changed is reported in the event data.

ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty)

Gibt, sofern vorhanden, den lokalen Wert einer Abhängigkeitseigenschaft zurück.Returns the local value of a dependency property, if it exists.

SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object)

Legt den Wert einer Abhängigkeitseigenschaft fest, ohne die Wertquelle zu ändern.Sets the value of a dependency property without changing its value source.

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

Legt den lokalen Wert einer Abhängigkeitseigenschaft fest, die über ihren Bezeichner angegeben wird.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)

Legt den lokalen Wert einer schreibgeschützten Abhängigkeitseigenschaft fest, die durch den DependencyPropertyKey-Bezeichner der Abhängigkeitseigenschaft angegeben ist.Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property.

ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty)

Gibt einen Wert zurück, der angibt, ob Serialisierungsprozesse den Wert der bereitgestellten Abhängigkeitseigenschaft serialisieren sollen.Returns a value that indicates whether serialization processes should serialize the value for the provided dependency property.

ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)
VerifyAccess() VerifyAccess() VerifyAccess() VerifyAccess()

Erzwingt, dass der aufrufende Thread auf dieses DispatcherObject zugreifen kann.Enforces that the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)

Gilt für:

Siehe auch