DependencyProperty.RegisterReadOnly DependencyProperty.RegisterReadOnly DependencyProperty.RegisterReadOnly DependencyProperty.RegisterReadOnly Method

Definition

Registriert eine Abhängigkeitseigenschaft als schreibgeschützte Abhängigkeitseigenschaft.Registers a dependency property as a read-only dependency property.

Überlädt

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

Registriert eine schreibgeschützte Abhängigkeitseigenschaft mit dem angegebenen Eigenschaftstyp und Besitzertyp sowie den angegebenen Eigenschaftsmetadaten.Registers a read-only dependency property, with the specified property type, owner type, and property metadata.

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

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

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

Registriert eine schreibgeschützte Abhängigkeitseigenschaft mit dem angegebenen Eigenschaftstyp und Besitzertyp sowie den angegebenen Eigenschaftsmetadaten.Registers a read-only dependency property, with the specified property type, owner type, and property metadata.

public:
 static System::Windows::DependencyPropertyKey ^ RegisterReadOnly(System::String ^ name, Type ^ propertyType, Type ^ ownerType, System::Windows::PropertyMetadata ^ typeMetadata);
public static System.Windows.DependencyPropertyKey RegisterReadOnly (string name, Type propertyType, Type ownerType, System.Windows.PropertyMetadata typeMetadata);
static member RegisterReadOnly : string * Type * Type * System.Windows.PropertyMetadata -> System.Windows.DependencyPropertyKey
Public Shared Function RegisterReadOnly (name As String, propertyType As Type, ownerType As Type, typeMetadata 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.

typeMetadata
PropertyMetadata PropertyMetadata PropertyMetadata PropertyMetadata

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

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.

Beispiele

Im folgenden Beispiel wird eine AquariumSize Abhängigkeits Eigenschaft als schreibgeschützt registriert.The following example registers an AquariumSize dependency property as read-only. Das Beispiel definiert AquariumSizeKey als internen Schlüssel (sodass andere Klassen in der Assembly Metadaten überschreiben könnten) und macht den Bezeichner der Abhängigkeits Eigenschaft auf Grundlage dieses AquariumSizePropertySchlüssels als verfügbar.The example defines AquariumSizeKey as an internal key (so that other classes in the assembly could override metadata) and exposes the dependency property identifier based on that key as AquariumSizeProperty. Außerdem wird ein Wrapper für AquariumSizeerstellt, der nur über einen get-Accessor verfügt.Also, a wrapper is created for AquariumSize, with only a get accessor.

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

Hinweise

Diese Methode gibt den- DependencyPropertyKeyTyp zurück RegisterAttached , während den DependencyProperty-Typ zurückgibt.This method returns the type DependencyPropertyKey, whereas RegisterAttached returns the type DependencyProperty. Normalerweise werden die Schlüssel, die schreibgeschützte Eigenschaften darstellen, nicht öffentlich gemacht, da die Schlüssel verwendet werden können, um den Wert der Abhängigkeits SetValue(DependencyPropertyKey, Object)Eigenschaft festzulegen, indem aufgerufen wird.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 Klassen Design wirkt sich auf Ihre Anforderungen aus. es wird jedoch im Allgemeinen empfohlen, den Zugriff und die DependencyPropertyKey Sichtbarkeit eines beliebigen auf die Teile des Codes zu beschränken, die erforderlich sind, um diese Abhängigkeits Eigenschaft als Teil der Klassen-oder Anwendungslogik festzulegen.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. Außerdem wird empfohlen, dass Sie einen Bezeichner für die Abhängigkeits Eigenschaft für die schreibgeschützte Abhängigkeits Eigenschaft verfügbar machen, DependencyPropertyKey.DependencyProperty indem Sie public static readonly den Wert von als Feld für die Klasse verfügbar machen.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 Abhängigkeits Eigenschaften sind ein gängiges Szenario, das sowohl in APIAPI der vorhandenen-als auch in der WPFWPF -Anpassungs Szenarios üblich ist, da andere Funktionen möglicherweise eine Abhängigkeits Eigenschaft erfordern, auch wenn diese Eigenschaft nicht von festgelegt werden kann. Anrufer.Read-only dependency properties are a fairly typical scenario both in the existing APIAPI and for customization scenarios, because other WPFWPF features might require a dependency property even if that property is not intended to be settable by callers. Sie können den Wert einer schreibgeschützten Abhängigkeits Eigenschaft als Grundlage für andere Eigenschafts System Vorgänge verwenden, die eine Abhängigkeits Eigenschaft annehmen, z. b Trigger . das Erstellen eines auf der Abhängigkeits Eigenschaft in einem Stil.You can use the value of a read-only dependency property as the basis for other property system operations that take a dependency property, such as basing a Trigger on the dependency property in a style.

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

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

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

public:
 static System::Windows::DependencyPropertyKey ^ RegisterReadOnly(System::String ^ name, Type ^ propertyType, Type ^ ownerType, System::Windows::PropertyMetadata ^ typeMetadata, System::Windows::ValidateValueCallback ^ validateValueCallback);
public static System.Windows.DependencyPropertyKey RegisterReadOnly (string name, Type propertyType, Type ownerType, System.Windows.PropertyMetadata typeMetadata, System.Windows.ValidateValueCallback validateValueCallback);
static member RegisterReadOnly : 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.

typeMetadata
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 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- DependencyPropertyKeyTyp zurück RegisterAttached , während den DependencyProperty-Typ zurückgibt.This method returns the type DependencyPropertyKey, whereas RegisterAttached returns the type DependencyProperty. Normalerweise werden die Schlüssel, die schreibgeschützte Eigenschaften darstellen, nicht öffentlich gemacht, da die Schlüssel verwendet werden können, um den Wert der Abhängigkeits SetValue(DependencyPropertyKey, Object)Eigenschaft festzulegen, indem aufgerufen wird.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 Klassen Design wirkt sich auf Ihre Anforderungen aus. es wird jedoch im Allgemeinen empfohlen, den Zugriff und die DependencyPropertyKey Sichtbarkeit eines beliebigen auf die Teile des Codes zu beschränken, die erforderlich sind, um diese Abhängigkeits Eigenschaft als Teil der Klassen-oder Anwendungslogik festzulegen.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. Außerdem wird empfohlen, dass Sie einen Bezeichner für die Abhängigkeits Eigenschaft für die schreibgeschützte Abhängigkeits Eigenschaft verfügbar machen, DependencyPropertyKey.DependencyProperty indem Sie public static readonly den Wert von als Feld für die Klasse verfügbar machen.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 Abhängigkeits Eigenschaften sind ein ziemlich typisches Szenario.Read-only dependency properties are a fairly typical scenario. Sie können den Wert einer schreibgeschützten Abhängigkeits Eigenschaft als Grundlage für andere Eigenschafts System Vorgänge verwenden, die eine Abhängigkeits Eigenschaft annehmen, z. b Trigger . das Erstellen eines auf der Abhängigkeits Eigenschaft in einem Stil.You can use the value of a read-only dependency property as the basis for other property system operations that take a dependency property, such as basing a Trigger on the dependency property in a style.

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

Die Validierung für eine schreibgeschützte Abhängigkeits Eigenschaft ist möglicherweise weniger wichtig.Validation on a read-only dependency property might be less important. Die nicht öffentliche Zugriffsebene, die Sie für den Schlüssel angeben, reduziert die Wahrscheinlichkeit für eine beliebige ungültige Eingabe.The nonpublic access level you specify for the key reduces the likelihood for arbitrary invalid input.

Gilt für: