Freigeben über


DependencyProperty Klasse

Definition

Stellt eine Eigenschaft dar, die über Methoden wie Formatieren, Datenbindung, Animation und Vererbung festgelegt werden kann.

public ref class DependencyProperty sealed
[System.ComponentModel.TypeConverter("System.Windows.Markup.DependencyPropertyConverter, PresentationFramework, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")]
public sealed class DependencyProperty
[System.ComponentModel.TypeConverter("System.Windows.Markup.DependencyPropertyConverter, PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")]
public sealed class DependencyProperty
[<System.ComponentModel.TypeConverter("System.Windows.Markup.DependencyPropertyConverter, PresentationFramework, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")>]
type DependencyProperty = class
[<System.ComponentModel.TypeConverter("System.Windows.Markup.DependencyPropertyConverter, PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")>]
type DependencyProperty = class
Public NotInheritable Class DependencyProperty
Vererbung
DependencyProperty
Attribute

Hinweise

Ein DependencyProperty unterstützt die folgenden Funktionen in Windows Presentation Foundation (WPF):

  • Die Eigenschaft kann in einer Formatvorlage festgelegt werden. Weitere Informationen finden Sie unter Formatieren und Vorlagen.

  • Die Eigenschaft kann über die Datenbindung festgelegt werden. Weitere Informationen zu Abhängigkeitseigenschaften für die Datenbindung finden Sie unter How to: Bind the Properties of Two Controls.

  • Die Eigenschaft kann mit einem dynamischen Ressourcenverweis festgelegt werden. Weitere Informationen finden Sie unter XAML-Ressourcen.

  • Die Eigenschaft kann ihren Wert automatisch von einem übergeordneten Element in der Elementstruktur erben. Weitere Informationen finden Sie unter Eigenschaftswertvererbung.

  • Die Eigenschaft kann animiert werden. Weitere Informationen finden Sie unter Animationsübersicht.

  • Die Eigenschaft kann melden, wenn der vorherige Wert der Eigenschaft geändert wurde und der Eigenschaftswert umgewandelt werden kann. Weitere Informationen finden Sie unter Dependency Property Callbacks and Validation.

  • Die Eigenschaft meldet Informationen an WPF, z. B. ob beim Ändern eines Eigenschaftswerts das Layoutsystem erforderlich sein muss, um die visuellen Elemente für ein Element neu zu kompensieren.

  • Die Eigenschaft erhält Unterstützung im WPF-Designer für Visual Studio. Beispielsweise kann die Eigenschaft im Eigenschaftenfenster bearbeitet werden.

Weitere Informationen zu Abhängigkeitseigenschaften finden Sie unter Übersicht über Abhängigkeitseigenschaften. Wenn Eigenschaften für ihre benutzerdefinierten Typen die Funktionen in der vorherigen Liste unterstützen sollen, sollten Sie eine Abhängigkeitseigenschaft erstellen. Informationen zum Erstellen benutzerdefinierter Abhängigkeitseigenschaften finden Sie unter benutzerdefinierte Abhängigkeitseigenschaften.

Eine angefügte Eigenschaft ist eine Eigenschaft, mit der jedes Objekt Informationen an den Typ melden kann, der die angefügte Eigenschaft definiert. In WPF kann jeder Typ, der von DependencyObject erbt, eine angefügte Eigenschaft verwenden, unabhängig davon, ob der Typ vom Typ erbt, der die Eigenschaft definiert. Eine angefügte Eigenschaft ist ein Feature der XAML-Sprache. Um eine angefügte Eigenschaft in XAML festzulegen, verwenden Sie den ownerType-.propertyName Syntax. Ein Beispiel für eine angefügte Eigenschaft ist die DockPanel.Dock-Eigenschaft. Wenn Sie eine Eigenschaft erstellen möchten, die für alle DependencyObject Typen verwendet werden kann, sollten Sie eine angefügte Eigenschaft erstellen. Weitere Informationen zu angefügten Eigenschaften, einschließlich der Erstellung, finden Sie unter Übersicht über angefügte Eigenschaften.

XAML-Attributverwendung

<object property="dependencyPropertyName"/>  

-oder-

<object property="ownerType.dependencyPropertyName"/>  

-oder-

<object property="attachedPropertyOwnerType.attachedPropertyName"/>  

XAML-Werte

dependencyPropertyName
Eine Zeichenfolge, die die DependencyProperty.Name der gewünschten Abhängigkeitseigenschaft angibt. Dies kann einem XML-Namespacepräfix vorangestellt werden, wenn sich die Eigenschaft nicht im Standard-XML-Namespace befindet (ausführliche Informationen finden Sie unter XAML-Namespaces und Namespacezuordnung für WPF-XAML-.)

ownerType.dependencyPropertyName
Eine Zeichenfolge, die einen Besitzertyp einer Abhängigkeitseigenschaft, einen Punkt (.) angibt, und dann die DependencyProperty.Name. ownerType können auch einem XML-Namespacepräfix vorangestellt werden. Diese Verwendung gilt insbesondere für spät gebundene Formatvorlagen und Vorlagen, bei denen der Besitzer der Abhängigkeitseigenschaft für die Analysekontext angegeben werden muss, da die TargetType noch nicht bekannt ist. Weitere Informationen finden Sie unter Formatieren und Vorlagen.

attachedPropertyOwnerType .attachedPropertyName
Eine Zeichenfolge, die den Besitzer einer angefügten Eigenschaft, einen Punkt (.) und dann den Namen der angefügten Eigenschaft angibt. attachedPropertyOwnerType können auch einem XML-Namespacepräfix vorangestellt werden.

Felder

UnsetValue

Gibt einen statischen Wert an, der vom WPF-Eigenschaftensystem anstelle von null verwendet wird, um anzugeben, dass die Eigenschaft vorhanden ist, aber nicht über den Vom Eigenschaftensystem festgelegten Wert verfügt.

Eigenschaften

DefaultMetadata

Ruft die Standardmetadaten der Abhängigkeitseigenschaft ab.

GlobalIndex

Ruft einen intern generierten Wert ab, der die Abhängigkeitseigenschaft eindeutig identifiziert.

Name

Ruft den Namen der Abhängigkeitseigenschaft ab.

OwnerType

Ruft den Typ des Objekts ab, das die Abhängigkeitseigenschaft mit dem Eigenschaftensystem registriert oder sich selbst als Besitzer der Eigenschaft hinzugefügt hat.

PropertyType

Ruft den Typ ab, den die Abhängigkeitseigenschaft für den Wert verwendet.

ReadOnly

Ruft einen Wert ab, der angibt, ob die von dieser DependencyProperty Instanz identifizierte Abhängigkeitseigenschaft eine schreibgeschützte Abhängigkeitseigenschaft ist.

ValidateValueCallback

Ruft den Wertüberprüfungsrückruf für die Abhängigkeitseigenschaft ab.

Methoden

AddOwner(Type)

Fügt einen anderen Typ als Besitzer einer Abhängigkeitseigenschaft hinzu, die bereits registriert wurde.

AddOwner(Type, PropertyMetadata)

Fügt einen weiteren Typ als Besitzer einer bereits registrierten Abhängigkeitseigenschaft hinzu, wobei Abhängigkeitseigenschaftsmetadaten für die Abhängigkeitseigenschaft bereitgestellt werden, wie sie für den bereitgestellten Besitzertyp vorhanden ist.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetHashCode()

Gibt einen Hashcode für diese DependencyPropertyzurück.

GetMetadata(DependencyObject)

Gibt die Metadaten für diese Abhängigkeitseigenschaft zurück, wie sie in der angegebenen Objektinstanz vorhanden ist.

GetMetadata(DependencyObjectType)

Gibt die Metadaten für diese Abhängigkeitseigenschaft zurück, wie sie für einen angegebenen Typ vorhanden ist.

GetMetadata(Type)

Gibt die Metadaten für diese Abhängigkeitseigenschaft zurück, da sie für einen angegebenen vorhandenen Typ vorhanden ist.

GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
IsValidType(Object)

Bestimmt, ob ein angegebener Wert für den Typ dieser Abhängigkeitseigenschaft akzeptabel ist, wie es anhand des in der ursprünglichen Registrierung der Abhängigkeitseigenschaft bereitgestellten Eigenschaftstyps überprüft wird.

IsValidValue(Object)

Bestimmt, ob der bereitgestellte Wert für den Typ der Eigenschaft über die grundlegende Typüberprüfung akzeptiert wird, und möglicherweise auch, wenn er sich innerhalb des zulässigen Wertebereichs für diesen Typ befindet.

MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
OverrideMetadata(Type, PropertyMetadata)

Gibt alternative Metadaten für diese Abhängigkeitseigenschaft an, wenn sie auf Instanzen eines angegebenen Typs vorhanden ist, wobei die Metadaten außer Kraft gesetzt werden, die für die Abhängigkeitseigenschaft vorhanden sind, während sie von Basistypen geerbt wurde.

OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey)

Stellt alternative Metadaten für eine schreibgeschützte Abhängigkeitseigenschaft bereit, wenn sie in Instanzen eines angegebenen Typs vorhanden ist, wobei die Metadaten außer Kraft gesetzt werden, die in der anfänglichen Registrierung von Abhängigkeitseigenschaften bereitgestellt wurden. Sie müssen die DependencyPropertyKey für die schreibgeschützte Abhängigkeitseigenschaft übergeben, um das Auslösen einer Ausnahme zu vermeiden.

Register(String, Type, Type)

Registriert eine Abhängigkeitseigenschaft mit dem angegebenen Eigenschaftennamen, Eigenschaftentyp und Besitzertyp.

Register(String, Type, Type, PropertyMetadata)

Registriert eine Abhängigkeitseigenschaft mit dem angegebenen Eigenschaftennamen, Eigenschaftentyp, Besitzertyp und Eigenschaftsmetadaten.

Register(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Registriert eine Abhängigkeitseigenschaft mit dem angegebenen Eigenschaftennamen, Eigenschaftentyp, Besitzertyp, Eigenschaftsmetadaten und einem Wertüberprüfungsrückruf für die Eigenschaft.

RegisterAttached(String, Type, Type)

Registriert eine angefügte Eigenschaft mit dem angegebenen Eigenschaftennamen, Eigenschaftentyp und Besitzertyp.

RegisterAttached(String, Type, Type, PropertyMetadata)

Registriert eine angefügte Eigenschaft mit dem angegebenen Eigenschaftennamen, Eigenschaftentyp, Besitzertyp und Eigenschaftsmetadaten.

RegisterAttached(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Registriert eine angefügte Eigenschaft mit dem angegebenen Eigenschaftstyp, Besitzertyp, Eigenschaftsmetadaten und Wertüberprüfungsrückruf für die Eigenschaft.

RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata)

Registriert eine schreibgeschützte angefügte Eigenschaft mit dem angegebenen Eigenschaftstyp, dem Besitzertyp und den Eigenschaftenmetadaten.

RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Registriert eine schreibgeschützte angefügte Eigenschaft mit dem angegebenen Eigenschaftentyp, dem Besitzertyp, den Eigenschaftenmetadaten und einem Überprüfungsrückruf.

RegisterReadOnly(String, Type, Type, PropertyMetadata)

Registriert eine schreibgeschützte Abhängigkeitseigenschaft mit dem angegebenen Eigenschaftstyp, dem Besitzertyp und den Eigenschaftenmetadaten.

RegisterReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Registriert eine schreibgeschützte Abhängigkeitseigenschaft mit dem angegebenen Eigenschaftstyp, dem Besitzertyp, den Eigenschaftenmetadaten und einem Überprüfungsrückruf.

ToString()

Gibt die Zeichenfolgendarstellung der Abhängigkeitseigenschaft zurück.

Gilt für:

Weitere Informationen