DependencyProperty.RegisterAttachedReadOnly DependencyProperty.RegisterAttachedReadOnly DependencyProperty.RegisterAttachedReadOnly DependencyProperty.RegisterAttachedReadOnly Method

Definition

Registriert eine schreibgeschützte angefügte Eigenschaft.Registers a read-only attached property.

Überlädt

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

Registriert eine schreibgeschützte angefügte Eigenschaft mit dem angegebenen Eigenschaftstyp und Besitzertyp sowie den angegebenen Eigenschaftsmetadaten.Registers a read-only attached property, with the specified property type, owner type, and property metadata.

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

Registriert eine schreibgeschützte Eigenschaft mit dem angegebenen Eigenschaftstyp, Besitzertyp, den angegebenen Eigenschaftsmetadaten und einem Validierungsrückruf.Registers a read-only attached property, with the specified property type, owner type, property metadata, and a validation callback.

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

Registriert eine schreibgeschützte angefügte Eigenschaft mit dem angegebenen Eigenschaftstyp und Besitzertyp sowie den angegebenen Eigenschaftsmetadaten.Registers a read-only attached property, with the specified property type, owner type, and property metadata.

public:
 static System::Windows::DependencyPropertyKey ^ RegisterAttachedReadOnly(System::String ^ name, Type ^ propertyType, Type ^ ownerType, System::Windows::PropertyMetadata ^ defaultMetadata);
public static System.Windows.DependencyPropertyKey RegisterAttachedReadOnly (string name, Type propertyType, Type ownerType, System.Windows.PropertyMetadata defaultMetadata);
static member RegisterAttachedReadOnly : string * Type * Type * System.Windows.PropertyMetadata -> System.Windows.DependencyPropertyKey
Public Shared Function RegisterAttachedReadOnly (name As String, propertyType As Type, ownerType As Type, defaultMetadata As PropertyMetadata) As DependencyPropertyKey

Parameter

name
String String String String

Der Name der zu registrierenden Abhängigkeitseigenschaft.The name of the dependency property to register.

propertyType
Type Type Type Type

Den Typ der Eigenschaft.The type of the property.

ownerType
Type Type Type Type

Der Besitzertyp, von dem die Abhängigkeitseigenschaft registriert wird.The owner type that is registering the dependency property.

defaultMetadata
PropertyMetadata PropertyMetadata PropertyMetadata PropertyMetadata

Eigenschaftenmetadaten für die Abhängigkeitseigenschaft.Property metadata for the dependency property.

Gibt zurück

Ein Schlüssel für eine Abhängigkeitseigenschaft, der zum Festlegen des Werts für ein statisches schreibgeschütztes Feld in der Klasse verwendet werden sollte. Mit diesem wird dann später auf die Abhängigkeitseigenschaft verwiesen.A dependency property key that should be used to set the value of a static read-only field in your class, which is then used to reference the dependency property later.

Hinweise

Diese Methode gibt den Typ zurück DependencyPropertyKeyhingegen RegisterAttached gibt den Typ zurück DependencyProperty.This method returns the type DependencyPropertyKey, whereas RegisterAttached returns the type DependencyProperty. In der Regel die Schlüssel, die schreibgeschützten Eigenschaften darstellen sind nicht öffentlich gemacht, da der Schlüssel verwendet werden können, Festlegen des Werts der Abhängigkeitseigenschaft durch Aufrufen von SetValue(DependencyPropertyKey, Object).Typically, the keys that represent read-only properties are not made public, because the keys can be used to set the dependency property value by calling SetValue(DependencyPropertyKey, Object). Ihr Klassenentwurf wirkt sich Ihre Anforderungen, jedoch wird allgemein empfohlen, beschränken den Zugriff und die Sichtbarkeit aller DependencyPropertyKey , nur die Teile des Codes, die die Abhängigkeitseigenschaft als Teil der Klasse oder die Anwendung Logik festgelegt sind.Your class design will affect your requirements, but it is generally recommended to limit the access and visibility of any DependencyPropertyKey to only those parts of your code that are necessary to set that dependency property as part of class or application logic. Es wird empfohlen, dass Sie Bezeichner einer Abhängigkeitseigenschaft für die schreibgeschützte Abhängigkeitseigenschaft verfügbar machen, indem der Wert von DependencyPropertyKey.DependencyProperty als eine public static readonly Feld in Ihrer Klasse auf.It is also recommended that you expose a dependency property identifier for the read-only dependency property, by exposing the value of DependencyPropertyKey.DependencyProperty as a public static readonly field on your class.

Schreibgeschützte angefügte Eigenschaften sind Szenario selten vorkommt, da das primäre Szenario für eine angefügte Eigenschaft mit der Verwendung in der ist XAMLXAML.Read-only attached properties are a rare scenario, because the primary scenario for an attached property is its use in XAMLXAML. Ohne einen öffentlichen Setter, kann keine angefügte Eigenschaft festgelegt werden XAMLXAML Syntax.Without a public setter, an attached property cannot be set in XAMLXAML syntax.

Weitere Informationen zur Registrierung von Abhängigkeitseigenschaften finden Sie unter DependencyProperty.For more information on dependency property registration, see DependencyProperty.

Verwendung von RegisterAttached für Abhängigkeitseigenschaften erbenUse RegisterAttached for Value-inheriting Dependency Properties

Ein bestimmtes Szenario für eine Abhängigkeitseigenschaft als zur Unterstützung der Vererbung von Eigenschaftswerten ist angefügt.One particular scenario for registering a dependency property as attached is to support property value inheritance. Registrieren Sie erben von Abhängigkeitseigenschaften mit RegisterAttached , auch wenn die Klasse definiert, die die Abhängigkeitseigenschaft verfügbar zu machen und selbst wenn Sie nicht beabsichtigen, Get * "und" Set * statische Methoden zur Bereitstellung verfügbar zu machen "true" angefügt. Unterstützung für Eigenschaftenaccessoren.You should register value-inheriting dependency properties with RegisterAttached even if the class defines property wrapper accessors that expose the dependency property, and even if you do not intend to expose Get* and Set* static methods to provide true attached property support accessors. Obwohl die Vererbung von Eigenschaftswerten bei nicht angefügten Abhängigkeitseigenschaften zu funktionieren scheint, ist das Vererbungsverhalten einer nicht angefügten Eigenschaft über bestimmte Elementgrenzen in der Common Language Runtime-Struktur nicht definiert.Although property value inheritance might appear to work for nonattached dependency properties, the inheritance behavior for a nonattached property through certain element boundaries in the runtime tree is undefined. Registrieren der Eigenschaft als effektiv angefügt wird die angefügte Eigenschaft eine globale Eigenschaft im Eigenschaftensystem, und stellt sicher, dass die Vererbung von Eigenschaftswerten über alle hinweg in einer Elementstruktur funktioniert.Registering the property as attached effectively makes the attached property a global property to the property system, and assures that property value inheritance works across all boundaries in an element tree. Verwenden Sie immer RegisterAttached zum Registrieren von Eigenschaften in dem Sie angeben Inherits in den Metadaten.Always use RegisterAttached to register properties where you specify Inherits in the metadata. Weitere Informationen finden Sie unter Vererbung von Eigenschaftswerten.For more information, see Property Value Inheritance.

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

Registriert eine schreibgeschützte Eigenschaft mit dem angegebenen Eigenschaftstyp, Besitzertyp, den angegebenen Eigenschaftsmetadaten und einem Validierungsrückruf.Registers a read-only attached property, with the specified property type, owner type, property metadata, and a validation callback.

public:
 static System::Windows::DependencyPropertyKey ^ RegisterAttachedReadOnly(System::String ^ name, Type ^ propertyType, Type ^ ownerType, System::Windows::PropertyMetadata ^ defaultMetadata, System::Windows::ValidateValueCallback ^ validateValueCallback);
public static System.Windows.DependencyPropertyKey RegisterAttachedReadOnly (string name, Type propertyType, Type ownerType, System.Windows.PropertyMetadata defaultMetadata, System.Windows.ValidateValueCallback validateValueCallback);
static member RegisterAttachedReadOnly : string * Type * Type * System.Windows.PropertyMetadata * System.Windows.ValidateValueCallback -> System.Windows.DependencyPropertyKey

Parameter

name
String String String String

Der Name der zu registrierenden Abhängigkeitseigenschaft.The name of the dependency property to register.

propertyType
Type Type Type Type

Den Typ der Eigenschaft.The type of the property.

ownerType
Type Type Type Type

Der Besitzertyp, von dem die Abhängigkeitseigenschaft registriert wird.The owner type that is registering the dependency property.

defaultMetadata
PropertyMetadata PropertyMetadata PropertyMetadata PropertyMetadata

Eigenschaftenmetadaten für die Abhängigkeitseigenschaft.Property metadata for the dependency property.

validateValueCallback
ValidateValueCallback ValidateValueCallback ValidateValueCallback ValidateValueCallback

Ein Verweis auf einen benutzerdefinierten Rückruf, der eine beliebige benutzerdefinierte Validierung des Werts der Abhängigkeitseigenschaft über die normale Validierung hinaus durchführen soll.A reference to a user-created callback that should perform any custom validation of the dependency property value beyond typical type validation.

Gibt zurück

Ein Abhängigkeitseigenschaftsschlüssel, der dazu verwendet werden soll, den Wert eines statischen schreibgeschützten Felds in Ihrer Klasse festzulegen, die dann dazu verwendet wird, auf die Abhängigkeitseigenschaft zu verweisen.A dependency property key that should be used to set the value of a static read-only field in your class, which is then used to reference the dependency property.

Hinweise

Diese Methode gibt den Typ zurück DependencyPropertyKeyhingegen RegisterAttached gibt den Typ zurück DependencyProperty.This method returns the type DependencyPropertyKey, whereas RegisterAttached returns the type DependencyProperty. In der Regel die Schlüssel, die den darstellen DependencyProperty.Typically, the keys that represent the type DependencyProperty. In der Regel die Schlüssel, die schreibgeschützten Eigenschaften darstellen sind nicht öffentlich gemacht, da der Schlüssel verwendet werden können, Festlegen des Werts der Abhängigkeitseigenschaft durch Aufrufen von SetValue(DependencyPropertyKey, Object).Typically, the keys that represent read-only properties are not made public, because the keys can be used to set the dependency property value by calling SetValue(DependencyPropertyKey, Object). Ihr Klassenentwurf wirkt sich Ihre Anforderungen, jedoch wird allgemein empfohlen, beschränken den Zugriff und die Sichtbarkeit aller DependencyPropertyKey , nur die Teile des Codes, die die Abhängigkeitseigenschaft als Teil der Klasse oder die Anwendung Logik festgelegt sind.Your class design will affect your requirements, but it is generally recommended to limit the access and visibility of any DependencyPropertyKey to only those parts of your code that are necessary to set that dependency property as part of class or application logic. Es wird empfohlen, dass Sie Bezeichner einer Abhängigkeitseigenschaft für die schreibgeschützte Abhängigkeitseigenschaft verfügbar machen, indem der Wert von DependencyPropertyKey.DependencyProperty als eine public static readonly Feld in Ihrer Klasse auf.It is also recommended that you expose a dependency property identifier for the read-only dependency property, by exposing the value of DependencyPropertyKey.DependencyProperty as a public static readonly field on your class.

Schreibgeschützte angefügte Eigenschaften sind Szenario selten vorkommt, da das primäre Szenario für eine angefügte Eigenschaft mit der Verwendung in der ist XAMLXAML.Read-only attached properties are a rare scenario, because the primary scenario for an attached property is its use in XAMLXAML. Ohne einen öffentlichen Setter, kann keine angefügte Eigenschaft festgelegt werden XAMLXAML Syntax.Without a public setter, an attached property cannot be set in XAMLXAML syntax.

Weitere Informationen zur Registrierung von Abhängigkeitseigenschaften finden Sie unter DependencyProperty.For more information on dependency property registration, see DependencyProperty.

Verwendung von RegisterAttached für Abhängigkeitseigenschaften erbenUse RegisterAttached for Value-inheriting Dependency Properties

Ein bestimmtes Szenario für eine Abhängigkeitseigenschaft registrieren, wie anstelle von angeschlossenen Register dient zur Unterstützung von Vererbung von Eigenschaftswerten.One particular scenario for registering a dependency property as attached instead of Register is to support property value inheritance. Registrieren Sie erben von Abhängigkeitseigenschaften mit RegisterAttached , auch wenn die Klasse definiert, die die Abhängigkeitseigenschaft verfügbar zu machen und selbst wenn Sie nicht beabsichtigen, Get * "und" Set * statische Methoden zur Bereitstellung verfügbar zu machen "true" angefügt. Unterstützung für Eigenschaftenaccessoren.You should register value-inheriting dependency properties with RegisterAttached even if the class defines property wrapper accessors that expose the dependency property, and even if you do not intend to expose Get* and Set* static methods to provide true attached property support accessors. Obwohl die Vererbung von Eigenschaftswerten bei nicht angefügten Abhängigkeitseigenschaften zu funktionieren scheint, ist das Vererbungsverhalten einer nicht angefügten Eigenschaft über bestimmte Elementgrenzen in der Common Language Runtime-Struktur nicht definiert.Although property value inheritance might appear to work for nonattached dependency properties, the inheritance behavior for a nonattached property through certain element boundaries in the runtime tree is undefined. Registrieren der Eigenschaft als effektiv angefügt wird die angefügte Eigenschaft eine globale Eigenschaft im Eigenschaftensystem, und stellt sicher, dass die Vererbung von Eigenschaftswerten über alle hinweg in einer Elementstruktur funktioniert.Registering the property as attached effectively makes the attached property a global property to the property system, and assures that property value inheritance works across all boundaries in an element tree. Verwenden Sie immer RegisterAttached zum Registrieren von Eigenschaften in dem Sie angeben Inherits in den Metadaten.Always use RegisterAttached to register properties where you specify Inherits in the metadata. Weitere Informationen finden Sie unter Vererbung von Eigenschaftswerten.For more information, see Property Value Inheritance.

Gilt für: