Freigeben über


DependencyProperty.RegisterAttached Methode

Definition

Registriert eine angefügte Abhängigkeitseigenschaft mit dem angegebenen Eigenschaftennamen, Eigenschaftentyp, Besitzertyp und Eigenschaftenmetadaten für die Eigenschaft.

 static DependencyProperty RegisterAttached(winrt::hstring const& name, TypeName const& propertyType, TypeName const& ownerType, PropertyMetadata const& defaultMetadata);
public static DependencyProperty RegisterAttached(string name, System.Type propertyType, System.Type ownerType, PropertyMetadata defaultMetadata);
function registerAttached(name, propertyType, ownerType, defaultMetadata)
Public Shared Function RegisterAttached (name As String, propertyType As Type, ownerType As Type, defaultMetadata As PropertyMetadata) As DependencyProperty

Parameter

name
String

winrt::hstring

Der Name der zu registrierenden Abhängigkeitseigenschaft.

propertyType
TypeName Type

Der Typ der Eigenschaft als Typreferenz (System.Type für Microsoft .NET, eine TypeName-Hilfsstruktur für Visual C++-Komponentenerweiterungen (C++/CX)).

ownerType
TypeName Type

Der Besitzertyp, der die Abhängigkeitseigenschaft als Typreferenz registriert (System.Type für Microsoft .NET, eine TypeName-Hilfsstruktur für Visual C++-Komponentenerweiterungen (C++/CX)).

defaultMetadata
PropertyMetadata

Eine eigenschaftsmetadaten instance. Dies kann eine PropertyChangedCallback-Implementierungsreferenz enthalten.

Gibt zurück

Ein Abhängigkeitseigenschaftsbezeichner, der verwendet werden soll, um den Wert eines öffentlichen statischen schreibgeschützten Felds in Ihrer Klasse festzulegen. Dieser Bezeichner wird dann verwendet, um später für Vorgänge wie das programmgesteuerte Festlegen des Werts oder das Anfügen einer Bindung auf die angefügte Eigenschaft zu verweisen.

Beispiele

In diesem Beispiel wird eine Klasse definiert, die von DependencyObject abgeleitet wird, und eine angefügte Eigenschaft zusammen mit dem Bezeichnerfeld definiert. Das Szenario für diese Klasse besteht darin, dass es sich um eine Dienstklasse handelt, die eine angefügte Eigenschaft deklariert, die andere UI-Elemente in XAML festlegen können, und der Dienst möglicherweise zur Laufzeit auf die angefügten Eigenschaftswerte für diese UI-Elemente reagiert. Weitere Beispiele finden Sie unter Benutzerdefinierte angefügte Eigenschaften.

public abstract class AquariumServices : DependencyObject
{
    public enum Buoyancy {Floats,Sinks,Drifts}

    public static readonly DependencyProperty BuoyancyProperty = DependencyProperty.RegisterAttached(
      "Buoyancy",
      typeof(Buoyancy),
      typeof(AquariumServices),
      new PropertyMetadata(Buoyancy.Floats)
    );
    public static void SetBuoyancy(DependencyObject element, Buoyancy value)
    {
        element.SetValue(BuoyancyProperty, value);
    }
    public static Buoyancy GetBuoyancy(DependencyObject element)
    {
        return (Buoyancy)element.GetValue(BuoyancyProperty);
    }
}
Public Class AquariumServices
    Inherits DependencyObject
    Public Enum Buoyancy
        Floats
        Sinks
        Drifts
    End Enum

    Public Shared ReadOnly BuoyancyProperty As DependencyProperty = _
          DependencyProperty.RegisterAttached(
          "Buoyancy", _
          GetType(Buoyancy), _
          GetType(AquariumServices), _
          New PropertyMetadata(Buoyancy.Floats))


    Public Sub SetBuoyancy(element As DependencyObject, value As Buoyancy)
        element.SetValue(BuoyancyProperty, value)
    End Sub
    Public Function GetBuoyancy(element As DependencyObject) As Buoyancy
        GetBuoyancy = CType(element.GetValue(BuoyancyProperty), Buoyancy)
    End Function
End Class

Gilt für:

Weitere Informationen