DependencyProperty.AddOwner DependencyProperty.AddOwner DependencyProperty.AddOwner DependencyProperty.AddOwner Method

Definition

Fügt einen weiteren Typ als Besitzer einer Abhängigkeitseigenschaft hinzu, die bereits für einen Typ registriert wurde.Adds another type as an owner of a dependency property that has already been registered to a type.

Überlädt

AddOwner(Type) AddOwner(Type) AddOwner(Type) AddOwner(Type)

Fügt einen weiteren Typ als Besitzer einer Abhängigkeitseigenschaft hinzu, die bereits registriert wurde.Adds another type as an owner of a dependency property that has already been registered.

AddOwner(Type, PropertyMetadata) AddOwner(Type, PropertyMetadata) AddOwner(Type, PropertyMetadata) AddOwner(Type, PropertyMetadata)

Fügt einen anderen Typ als Besitzer einer Abhängigkeitseigenschaft hinzu, die bereits registriert wurde. Dabei werden Abhängigkeitseigenschaft-Metadaten für die Abhängigkeitseigenschaft bereitgestellt, wie sie für den bereitgestellten Besitzertyp vorhanden sind.Adds another type as an owner of a dependency property that has already been registered, providing dependency property metadata for the dependency property as it will exist on the provided owner type.

AddOwner(Type) AddOwner(Type) AddOwner(Type) AddOwner(Type)

Fügt einen weiteren Typ als Besitzer einer Abhängigkeitseigenschaft hinzu, die bereits registriert wurde.Adds another type as an owner of a dependency property that has already been registered.

public:
 System::Windows::DependencyProperty ^ AddOwner(Type ^ ownerType);
public System.Windows.DependencyProperty AddOwner (Type ownerType);
member this.AddOwner : Type -> System.Windows.DependencyProperty
Public Function AddOwner (ownerType As Type) As DependencyProperty

Parameter

ownerType
Type Type Type Type

Der Typ, der als ein Besitzer dieser Abhängigkeitseigenschaft hinzugefügt werden soll.The type to add as an owner of this dependency property.

Gibt zurück

Ein Verweis auf den ursprünglichen DependencyProperty-Bezeichner, der die Abhängigkeitseigenschaft angibt.A reference to the original DependencyProperty identifier that identifies the dependency property. Dieser Bezeichner sollte von der hinzufügenden Klasse als public static readonly-Feld verfügbar gemacht werden.This identifier should be exposed by the adding class as a public static readonly field.

Hinweise

Diese Methode ermöglicht es dem Eigenschaften System, eine Abhängigkeits Eigenschaft für einen Typ zu erkennen, der diese bestimmte Abhängigkeits Eigenschaft nicht anfänglich registriert hat.This method enables the property system to recognize a dependency property on a type that did not register that particular dependency property initially.

In der Regel wird verwendet, um Abhängigkeits Eigenschaften zu Klassen hinzuzufügen, die diese Abhängigkeits Eigenschaft nicht bereits über die verwaltete Klassen Vererbung verfügbar machen (die Klassen Vererbung würde bewirken, dass die Wrapper Eigenschaften von der abgeleiteten Klasse geerbt werden und somit AddOwner bietet allgemeine Mitglieder-Tabellen Zugriff auf die Abhängigkeits Eigenschaft bereits).Typically, AddOwner is used to add dependency properties to classes that do not already expose that dependency property through managed class inheritance (class inheritance would cause the wrapper properties to be inherited by the derived class, and thus would provide general members-table access to the dependency property already). AddOwnerermöglicht dem Eigenschaften System, eine Abhängigkeits Eigenschaft für einen Typ zu erkennen, der diese Abhängigkeits Eigenschaft nicht anfänglich registriert hat.AddOwner enables the property system to recognize a dependency property on a type that did not register that dependency property initially.

Diese Signatur lässt keine Angabe von Metadaten zu.This signature does not allow for specifying metadata. Wenn Sie diese Methode verwenden, werden die Metadaten automatisch für den neuen DependencyProperty und dessen Besitzertyp generiert.When you use this method, the metadata is automatically generated for the new DependencyProperty and its owner type. Die automatisch generierten Metadaten sind das Ergebnis der zusammengeführten Metadaten aller Basis Typen, für die diese Eigenschaft definiert ist.The auto-generated metadata is the result of the merged metadata from all of the base types that have this property defined. Wenn keine zusammengeführten Metadaten verfügbar sind, werden die Standard Metadaten für die Eigenschaft verwendet.If no merged metadata is available, then the default metadata for the property is used. Wenn die Eigenschaft mithilfe der RegisterAttached -Methode registriert wird, sind die Standard Metadaten identisch mit den Metadaten, die beim RegisterAttached Aufruf von erstellt wurden.If the property is registered by using the RegisterAttached method, then the default metadata is the same as the metadata that is created when RegisterAttached was called. Andernfalls wird das PropertyMetadata -Objekt erstellt, wobei DefaultValue die-Eigenschaft auf den Standardwert des Eigenschafts Typs und PropertyMetadata alle anderen Eigenschaften von auf nullfestgelegt ist.Otherwise, the PropertyMetadata object is created with the DefaultValue property set to the property type's default and all other properties of the PropertyMetadata is set to null. Verwenden Sie AddOwner(Type, PropertyMetadata) die Signatur, wenn Sie Metadaten für die Version der Abhängigkeits Eigenschaft bereitstellen möchten, die dem bereitgestellten Typ hinzugefügt wurde.Use the AddOwner(Type, PropertyMetadata) signature if you want to provide metadata for the version of the dependency property as added to the provided type.

Der Rückgabewert dieser Methode wird normalerweise verwendet, um die Abhängigkeits Eigenschaft zu deklarieren und verfügbar zu machen, indem Sie einen Bezeichner der Abhängigkeits EigenschaftThe return value of this method is typically used to declare and expose the dependency property by storing a dependency property identifier. Der Bezeichner ermöglicht den Zugriff auf die Abhängigkeits Eigenschaft, wenn Sie das APIsAPIs Eigenschaften System für die Abhängigkeits Eigenschaft aufrufen möchten, insbesondere, da Sie in der hinzugefügten Besitzer Klasse vorhanden ist.The identifier provides access to the dependency property if you want to call property system APIsAPIs against the dependency property, particularly as it exists on the adding owner class. Der gleiche Eigenschaftsname für den ursprünglichen Besitzer und den hinzugefügten Besitzer sollte verwendet werden, um die ähnliche Funktionalität anzugeben.The same property name for both original owner and added owner should be used to indicate the similar functionality. Sie sollten den Rückgabe DependencyProperty Wert AddOwner der-Methode verwenden, um den Bezeichner der Abhängigkeits Eigenschaft zu definieren CLRCLR . Außerdem müssen Sie die Eigenschaftenwrapper für Abhängigkeits Eigenschaften AddOwnerdeklarieren, die Typen mithilfe von hinzugefügt werden.You should use the DependencyProperty return value of the AddOwner method to define the dependency property identifier, and also to declare CLRCLR property wrappers, for dependency properties that are added to types using AddOwner.

Die AddOwner oben genannte Methodik wird verwendet, wenn die Abhängigkeits Eigenschaften erstellt werden, WPFWPFdie in deklariert werden.The AddOwner methodology recommended above is used when creating the dependency properties that are declared within WPFWPF. Beispielsweise definieren sowohl Border als Control auch eine BorderBrush Abhängigkeits Eigenschaft, die über ähnliche Funktionen verfügen.For instance, both Border and Control define a BorderBrush dependency property, which have similar functionality. Controldefiniert seine BorderBrush -Eigenschaft für das Eigenschaften System durch AddOwner Aufrufen von basierend auf dem Border ursprünglichen Besitzer und BorderBrushProperty dessen registriertem Bezeichner der Abhängigkeits Eigenschaft.Control defines its BorderBrush property to the property system by calling AddOwner based on the original owner Border and its registered BorderBrushProperty dependency property identifer. Der AddOwner Rückgabewert wird dann verwendet, um ein neues statisches DependencyProperty FeldBorderBrushProperty() für diese Eigenschaft für den hinzugefügten Besitzer BorderBrush einzurichten. Außerdem wird ein Eigenschafts Wrapper deklariert.The AddOwner return value is then used to establish a new static DependencyProperty field (BorderBrushProperty) for that property on the added owner, and a BorderBrush property wrapper is also declared.

AddOwner(Type, PropertyMetadata) AddOwner(Type, PropertyMetadata) AddOwner(Type, PropertyMetadata) AddOwner(Type, PropertyMetadata)

Fügt einen anderen Typ als Besitzer einer Abhängigkeitseigenschaft hinzu, die bereits registriert wurde. Dabei werden Abhängigkeitseigenschaft-Metadaten für die Abhängigkeitseigenschaft bereitgestellt, wie sie für den bereitgestellten Besitzertyp vorhanden sind.Adds another type as an owner of a dependency property that has already been registered, providing dependency property metadata for the dependency property as it will exist on the provided owner type.

public:
 System::Windows::DependencyProperty ^ AddOwner(Type ^ ownerType, System::Windows::PropertyMetadata ^ typeMetadata);
public System.Windows.DependencyProperty AddOwner (Type ownerType, System.Windows.PropertyMetadata typeMetadata);
member this.AddOwner : Type * System.Windows.PropertyMetadata -> System.Windows.DependencyProperty
Public Function AddOwner (ownerType As Type, typeMetadata As PropertyMetadata) As DependencyProperty

Parameter

ownerType
Type Type Type Type

Der Typ, der als Besitzer dieser Abhängigkeitseigenschaft hinzugefügt werden soll.The type to add as owner of this dependency property.

typeMetadata
PropertyMetadata PropertyMetadata PropertyMetadata PropertyMetadata

Die Metadaten, die die Abhängigkeitseigenschaft beschreiben, wie sie für den bereitgestellten Typ vorhanden sind.The metadata that qualifies the dependency property as it exists on the provided type.

Gibt zurück

Ein Verweis auf den ursprünglichen DependencyProperty-Bezeichner, der die Abhängigkeitseigenschaft angibt.A reference to the original DependencyProperty identifier that identifies the dependency property. Dieser Bezeichner sollte von der hinzufügenden Klasse als public static readonly-Feld verfügbar gemacht werden.This identifier should be exposed by the adding class as a public static readonly field.

Hinweise

Diese Methode ermöglicht es dem Eigenschaften System, eine Abhängigkeits Eigenschaft für einen Typ zu erkennen, der diese bestimmte Abhängigkeits Eigenschaft nicht anfänglich registriert hat.This method enables the property system to recognize a dependency property on a type that did not register that particular dependency property initially.

Der Rückgabewert dieser Methode wird verwendet, um die Abhängigkeits Eigenschaft zu deklarieren und verfügbar zu machen, insbesondere, da Sie in der hinzugefügten Besitzer Klasse vorhanden ist.The return value of this method is used to declare and expose the dependency property, particularly as it exists on the adding owner class. Im Allgemeinen sollte derselbe Eigenschaftsname sowohl für den ursprünglichen Besitzer als auch für den hinzugefügten Besitzer verwendet werden, um die ähnliche Funktionalität anzugeben.Generally, the same property name for both original owner and added owner should be used to indicate the similar functionality. Es wird empfohlen, die Bezeichner sowie die neuen CLRCLR Eigenschaftenwrapper für Abhängigkeits Eigenschaften verfügbar zu machen, die Typen mithilfe AddOwnervon hinzugefügt werden.It is good practice to expose the identifiers, as well as new CLRCLR property wrappers, for dependency properties that are added to types using AddOwner.

Die AddOwner oben genannte Methodik wird beim Erstellen APIsAPIs von deklariert in WPFWPFverwendet.The AddOwner methodology recommended above is used when creating APIsAPIs declared within WPFWPF. Beispielsweise definieren sowohl Border als Control auch eine BorderBrush Abhängigkeits Eigenschaft, die über ähnliche Funktionen verfügen.For instance, both Border and Control define a BorderBrush dependency property, which have similar functionality. Controldefiniert die- AddOwner Border BorderBrushProperty Eigenschaft für das Eigenschaften System durch Aufrufen von für den ursprünglichen Besitzer und den zugehörigen Bezeichner der Abhängigkeits Eigenschaft. BorderBrushControl defines its BorderBrush property to the property system by calling AddOwner on original owner Border and its registered BorderBrushProperty dependency property identifer. Der AddOwner Rückgabewert wird dann verwendet, um ein statisches DependencyProperty FeldBorderBrushProperty() für diese Eigenschaft für den hinzugefügten Besitzer BorderBrush einzurichten, und ein Eigenschafts Wrapper wird ebenfalls deklariert.The AddOwner return value is then used to establish a static DependencyProperty field (BorderBrushProperty) for that property on the added owner, and a BorderBrush property wrapper is also declared.

Der Bezeichner der Abhängigkeits Eigenschaft des hinzugefügten Besitzers sollte für GetValueVorgänge wie verwendet werden.The added owner's dependency property identifier should be used for operations such as GetValue. Typspezifische Vorgänge, die entweder Typen oder Instanzen der Klasse betreffen, die als Besitzer mit unterschiedlichen Metadaten hinzugefügt wurden, geben jedoch weiterhin die erwarteten Ergebnisse zurück, auch wenn der ursprüngliche Bezeichner der Abhängigkeits Eigenschaft (nicht der hinzugefügte Besitzer) in angegeben wird. Aufrufe von-Methoden, GetValue z GetMetadata. b. oder.However, type-specific operations involving either types or instances of the class that was added as owner with different metadata will still return the expected results even if the original (not the added owner's) dependency property identifier is specified in calls to methods such as GetValue or GetMetadata. Die Metadaten für den hinzugefügten Besitzer werden durch den AddOwner eigentlichen Rückruf fortgeführt. es wird nicht notwendigerweise ausschließlich durch das hinzugefügte Feld Bezeichner der Besitzer Klasse verwiesen.The metadata for the added owner is perpetuated by the AddOwner call itself, not necessarily referenced exclusively by the adding owner class identifier field. Trotzdem empfiehlt es sich, den Bezeichner sowie neue CLRCLR Eigenschaftenwrapper für Abhängigkeits Eigenschaften verfügbar zu machen, die Typen mithilfe AddOwnervon hinzugefügt werden, da dadurch keine Unterschiede zwischen dem und CLRCLRdem XAMLXAML Darstellungen ihrer Eigenschaften.Nevertheless, it is good practice to expose the identifier, as well as new CLRCLR property wrappers, for dependency properties that are added to types using AddOwner, because failing to do so creates disparity between the CLRCLR and XAMLXAML representations of your properties.

Die angegebenen Metadaten werden mit den Eigenschafts Metadaten für die Abhängigkeits Eigenschaft zusammengeführt, so wie Sie auf dem Basis Besitzer vorhanden sind.The supplied metadata is merged with the property metadata for the dependency property as it exists on the base owner. Alle Eigenschaften, die in den ursprünglichen Basis Metadaten angegeben wurden, bleiben erhalten.Any characteristics that were specified in the original base metadata will persist. Nur die Merkmale, die speziell in den neuen Metadaten geändert wurden, überschreiben die Eigenschaften der Basis Metadaten.Only those characteristics that were specifically changed in the new metadata will override the characteristics of the base metadata. Einige Merkmale, wie z DefaultValue. b., werden ersetzt, wenn Sie in den neuen Metadaten angegeben werden.Some characteristics, such as DefaultValue, are replaced if they are specified in the new metadata. Andere, wie z PropertyChangedCallback. b., werden kombiniert.Others, such as PropertyChangedCallback, are combined. Letztendlich hängt das Zusammensetzungs Verhalten vom Eigenschaftentyp ab, der für die Überschreibung verwendet wird, sodass das hier beschriebene Verhalten für die vorhandenen eigenschaftenmetadatenklassen ist, die von WPFWPF Abhängigkeits Eigenschaften verwendet werden.Ultimately, the merge behavior depends on the property metadata type being used for the override, so the behavior described here is for the existing property metadata classes used by WPFWPF dependency properties. Weitere Informationen finden Sie unter Metadaten für Abhängigkeits Eigenschaften und Framework-Eigenschaften Metadaten.For details, see Dependency Property Metadata and Framework Property Metadata.

Gilt für: