DependencyProperty.RegisterAttached Método

Definición

Registra una propiedad de dependencia adjunta con el nombre de propiedad, el tipo de propiedad, el tipo de propiedad y los metadatos de propiedad especificados para la propiedad.

 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

Parámetros

name
String

winrt::hstring

Nombre de la propiedad de dependencia que se va a registrar.

propertyType
TypeName Type

El tipo de la propiedad, como referencia de tipo (System.Type para Microsoft .NET, un struct auxiliar TypeName para extensiones de componentes de Visual C++ (C++/CX)).

ownerType
TypeName Type

Tipo de propietario que registra la propiedad de dependencia, como referencia de tipo (System.Type para Microsoft .NET, una estructura auxiliar TypeName para extensiones de componentes de Visual C++ (C++/CX)).

defaultMetadata
PropertyMetadata

Una instancia de metadatos de propiedad. Esto puede contener una referencia de implementación PropertyChangedCallback .

Devoluciones

Identificador de propiedad de dependencia que se debe usar para establecer el valor de un campo de solo lectura estático público en la clase . Después, ese identificador se usa para hacer referencia a la propiedad adjunta más adelante, para operaciones como establecer su valor mediante programación o adjuntar un enlace.

Ejemplos

En este ejemplo se define una clase que se deriva de DependencyObject y se define una propiedad adjunta junto con el campo de identificador. El escenario de esta clase es que es una clase de servicio que declara una propiedad adjunta que otros elementos de la interfaz de usuario pueden establecer en XAML y el servicio actúa potencialmente en los valores de propiedad adjunta en esos elementos de interfaz de usuario en tiempo de ejecución. Para obtener más ejemplos, vea Propiedades adjuntas personalizadas.

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

Se aplica a

Consulte también