DependencyProperty.RegisterAttached Methode

Definition

Registriert eine angefügte Eigenschaft beim Eigenschaftensystem.

Überlädt

Name Beschreibung
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.

RegisterAttached(String, Type, Type)

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

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

Parameter

name
String

Der Name der zu registrierenden Abhängigkeitseigenschaft.

propertyType
Type

Der Typ der Eigenschaft.

ownerType
Type

Der Besitzertyp, der die Abhängigkeitseigenschaft registriert.

Gibt zurück

Ein Abhängigkeitseigenschaftsbezeichner, der zum Festlegen des Werts eines public static readonly Felds in Ihrer Klasse verwendet werden soll. Dieser Bezeichner wird dann verwendet, um später auf die Abhängigkeitseigenschaft zu verweisen, für Vorgänge wie das programmgesteuerte Festlegen des Werts oder das Abrufen von Metadaten.

Beispiele

Im folgenden Beispiel wird eine angefügte Eigenschaft für eine abstrakte Klasse mithilfe dieser RegisterAttached Signatur registriert.

public static readonly DependencyProperty IsBubbleSourceProperty = DependencyProperty.RegisterAttached(
  "IsBubbleSource",
  typeof(Boolean),
  typeof(AquariumObject2)
);
public static void SetIsBubbleSource(UIElement element, Boolean value)
{
    element.SetValue(IsBubbleSourceProperty, value);
}
public static Boolean GetIsBubbleSource(UIElement element)
{
    return (Boolean)element.GetValue(IsBubbleSourceProperty);
}
Public Shared ReadOnly IsBubbleSourceProperty As DependencyProperty = DependencyProperty.RegisterAttached("IsBubbleSource", GetType(Boolean), GetType(AquariumObject2))
Public Shared Sub SetIsBubbleSource(ByVal element As UIElement, ByVal value As Boolean)
    element.SetValue(IsBubbleSourceProperty, value)
End Sub
Public Shared Function GetIsBubbleSource(ByVal element As UIElement) As Boolean
    Return CType(element.GetValue(IsBubbleSourceProperty), Boolean)
End Function

Hinweise

Eine angefügte Eigenschaft ist ein Eigenschaftskonzept, das von Extensible Application Markup Language (XAML) definiert wird. WPF implementiert angefügte Eigenschaften als Abhängigkeitseigenschaften. Da die WPF angefügten Eigenschaften Abhängigkeitseigenschaften sind, können sie Metadaten angewendet haben, die vom allgemeinen Eigenschaftensystem für Vorgänge wie Berichtslayoutmerkmale verwendet werden können. Weitere Informationen finden Sie unter "Übersicht über angefügte Eigenschaften".

Weitere Informationen zur Registrierung von Abhängigkeitseigenschaften finden Sie unter DependencyProperty.

Weitere Informationen

Gilt für:

RegisterAttached(String, Type, Type, PropertyMetadata)

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

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

Parameter

name
String

Der Name der zu registrierenden Abhängigkeitseigenschaft.

propertyType
Type

Der Typ der Eigenschaft.

ownerType
Type

Der Besitzertyp, der die Abhängigkeitseigenschaft registriert.

defaultMetadata
PropertyMetadata

Eigenschaftenmetadaten für die Abhängigkeitseigenschaft. Dies kann sowohl den Standardwert als auch andere Merkmale enthalten.

Gibt zurück

Ein Abhängigkeitseigenschaftsbezeichner, der zum Festlegen des Werts eines public static readonly Felds in Ihrer Klasse verwendet werden soll. Dieser Bezeichner wird dann verwendet, um später auf die Abhängigkeitseigenschaft zu verweisen, für Vorgänge wie das programmgesteuerte Festlegen des Werts oder das Abrufen von Metadaten.

Hinweise

Eine angefügte Eigenschaft ist ein Eigenschaftskonzept, das von Extensible Application Markup Language (XAML) definiert wird. WPF implementiert angefügte Eigenschaften als Abhängigkeitseigenschaften. Da die WPF angefügten Eigenschaften Abhängigkeitseigenschaften sind, können sie Metadaten angewendet haben, die vom allgemeinen Eigenschaftensystem für Vorgänge wie Berichtslayoutmerkmale verwendet werden können. Weitere Informationen finden Sie unter "Übersicht über angefügte Eigenschaften".

Weitere Informationen zur Registrierung von Abhängigkeitseigenschaften finden Sie unter DependencyProperty.

Verwenden von RegisterAttached für abhängigkeitsvererbende Eigenschaften

Ein bestimmtes Szenario für die Registrierung einer Abhängigkeitseigenschaft RegisterAttached anstelle davon ist die Unterstützung der Register Eigenschaftswertvererbung. Sie sollten abhängigkeitsvererbende Eigenschaften RegisterAttached auch dann registrieren, wenn die Klasse Eigenschaftenwrapper-Accessoren definiert, die die Abhängigkeitseigenschaft verfügbar machen, und auch dann, wenn Sie nicht beabsichtigen, Get* und Set*-statische Methoden verfügbar zu machen, um Accessoren für true angefügte Eigenschaften bereitzustellen. Obwohl die Eigenschaftswertvererbung möglicherweise für nicht angefügte Abhängigkeitseigenschaften funktioniert, ist das Vererbungsverhalten für eine nicht angefügte Eigenschaft über bestimmte Elementgrenzen in der Laufzeitstruktur nicht definiert. Durch die effektive Registrierung der Eigenschaft als angefügte Eigenschaft wird die angefügte Eigenschaft zu einer globalen Eigenschaft im Eigenschaftensystem und stellt sicher, dass die Vererbung von Eigenschaftswerten über alle Grenzen in einer Elementstruktur hinweg funktioniert. Verwenden Sie immer RegisterAttached, um Eigenschaften zu registrieren, bei denen Sie Inherits in den Metadaten angeben. Weitere Informationen finden Sie unter Eigenschaftswertvererbung.

Weitere Informationen

Gilt für:

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.

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

Parameter

name
String

Der Name der zu registrierenden Abhängigkeitseigenschaft.

propertyType
Type

Der Typ der Eigenschaft.

ownerType
Type

Der Besitzertyp, der die Abhängigkeitseigenschaft registriert.

defaultMetadata
PropertyMetadata

Eigenschaftenmetadaten für die Abhängigkeitseigenschaft. Dies kann sowohl den Standardwert als auch andere Merkmale enthalten.

validateValueCallback
ValidateValueCallback

Ein Verweis auf einen Rückruf, der eine benutzerdefinierte Überprüfung des Werts der Abhängigkeitseigenschaft über die typische Typüberprüfung hinaus ausführen sollte.

Gibt zurück

Ein Abhängigkeitseigenschaftsbezeichner, der zum Festlegen des Werts eines public static readonly Felds in Ihrer Klasse verwendet werden soll. Dieser Bezeichner wird dann verwendet, um später auf die Abhängigkeitseigenschaft zu verweisen, für Vorgänge wie das programmgesteuerte Festlegen des Werts oder das Abrufen von Metadaten.

Beispiele

Im folgenden Beispiel wird eine angefügte Eigenschaft für eine abstrakte Klasse mithilfe dieser RegisterAttached Signatur registriert. Diese angefügte Eigenschaft ist eine Enumerationstypeigenschaft, und die Registrierung fügt einen Überprüfungsrückruf hinzu, um zu überprüfen, ob der angegebene Wert ein Wert der Enumeration ist.

public static readonly DependencyProperty IsBubbleSourceProperty = DependencyProperty.RegisterAttached(
  "IsBubbleSource",
  typeof(Boolean),
  typeof(AquariumObject2)
);
public static void SetIsBubbleSource(UIElement element, Boolean value)
{
    element.SetValue(IsBubbleSourceProperty, value);
}
public static Boolean GetIsBubbleSource(UIElement element)
{
    return (Boolean)element.GetValue(IsBubbleSourceProperty);
}
Public Shared ReadOnly IsBubbleSourceProperty As DependencyProperty = DependencyProperty.RegisterAttached("IsBubbleSource", GetType(Boolean), GetType(AquariumObject2))
Public Shared Sub SetIsBubbleSource(ByVal element As UIElement, ByVal value As Boolean)
    element.SetValue(IsBubbleSourceProperty, value)
End Sub
Public Shared Function GetIsBubbleSource(ByVal element As UIElement) As Boolean
    Return CType(element.GetValue(IsBubbleSourceProperty), Boolean)
End Function

Hinweise

Eine angefügte Eigenschaft ist ein Eigenschaftskonzept, das von Extensible Application Markup Language (XAML) definiert wird. WPF implementiert angefügte Eigenschaften als Abhängigkeitseigenschaften. Da die WPF angefügten Eigenschaften Abhängigkeitseigenschaften sind, können sie Metadaten angewendet haben, die vom allgemeinen Eigenschaftensystem für Vorgänge wie Berichtslayoutmerkmale verwendet werden können. Weitere Informationen finden Sie unter "Übersicht über angefügte Eigenschaften".

Weitere Informationen zur Registrierung von Abhängigkeitseigenschaften finden Sie unter DependencyProperty.

Verwenden von RegisterAttached für abhängigkeitsvererbende Eigenschaften

Ein bestimmtes Szenario für die Registrierung einer Abhängigkeitseigenschaft RegisterAttached anstelle davon ist die Unterstützung der Register Eigenschaftswertvererbung. Sie sollten abhängigkeitsvererbende Eigenschaften RegisterAttached auch dann registrieren, wenn die Klasse Eigenschaftenwrapper-Accessoren definiert, die die Abhängigkeitseigenschaft verfügbar machen, und auch dann, wenn Sie nicht beabsichtigen, Get* und Set*-statische Methoden verfügbar zu machen, um Accessoren für true angefügte Eigenschaften bereitzustellen. Obwohl die Eigenschaftswertvererbung möglicherweise für nicht angefügte Abhängigkeitseigenschaften funktioniert, ist das Vererbungsverhalten für eine nicht angefügte Eigenschaft über bestimmte Elementgrenzen in der Laufzeitstruktur nicht definiert. Durch die effektive Registrierung der Eigenschaft als angefügte Eigenschaft wird die angefügte Eigenschaft zu einer globalen Eigenschaft im Eigenschaftensystem und stellt sicher, dass die Vererbung von Eigenschaftswerten über alle Grenzen in einer Elementstruktur hinweg funktioniert. Verwenden Sie immer RegisterAttached, um Eigenschaften zu registrieren, bei denen Sie Inherits in den Metadaten angeben. Weitere Informationen finden Sie unter Eigenschaftswertvererbung.

Weitere Informationen

Gilt für: