Partager via


DependencyProperty.RegisterAttached Méthode

Définition

Inscrit une propriété de dépendance jointe avec le nom de propriété, le type de propriété, le type de propriétaire et les métadonnées de propriété spécifiés pour la propriété.

 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

Paramètres

name
String

winrt::hstring

Nom de la propriété de dépendance à inscrire.

propertyType
TypeName Type

Type de la propriété, comme référence de type (System.Type pour Microsoft .NET, struct d’assistance TypeName pour les extensions de composant Visual C++ (C++/CX)).

ownerType
TypeName Type

Type de propriétaire qui inscrit la propriété de dépendance en tant que référence de type (System.Type pour Microsoft .NET, struct d’assistance TypeName pour les extensions de composant Visual C++ (C++/CX)).

defaultMetadata
PropertyMetadata

Une instance de métadonnées de propriété. Il peut contenir une référence d’implémentation PropertyChangedCallback .

Retours

Identificateur de propriété de dépendance qui doit être utilisé pour définir la valeur d’un champ public statique en lecture seule dans votre classe. Cet identificateur est ensuite utilisé pour référencer la propriété jointe ultérieurement, pour des opérations telles que la définition de sa valeur par programmation ou l’attachement d’une liaison.

Exemples

Cet exemple définit une classe qui dérive de DependencyObject et définit une propriété jointe avec le champ d’identificateur. Le scénario de cette classe est qu’il s’agit d’une classe de service qui déclare une propriété jointe que d’autres éléments d’interface utilisateur peuvent définir en XAML, et que le service agit potentiellement sur les valeurs de propriété jointes sur ces éléments d’interface utilisateur au moment de l’exécution. Pour plus d’exemples, consultez Propriétés jointes personnalisées.

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

S’applique à

Voir aussi