DependencyProperty.RegisterAttached Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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.
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)).
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