Compartilhar via


DependencyProperty.RegisterAttached Método

Definição

Registra uma propriedade anexada com o sistema de propriedade.

Sobrecargas

RegisterAttached(String, Type, Type)

Registra uma propriedade anexada com o nome de propriedade, o tipo de propriedade e o tipo de proprietário especificados.

RegisterAttached(String, Type, Type, PropertyMetadata)

Registra uma propriedade anexada com o nome de propriedade, tipo de propriedade, tipo de proprietário e metadados de propriedade especificados.

RegisterAttached(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Registra uma propriedade anexada com o tipo de propriedade, o tipo de proprietário, os metadados de propriedade e o retorno de chamada de validação de valor da propriedade especificados.

RegisterAttached(String, Type, Type)

Registra uma propriedade anexada com o nome de propriedade, o tipo de propriedade e o tipo de proprietário especificados.

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

Parâmetros

name
String

O nome da propriedade de dependência a ser registrada.

propertyType
Type

O tipo da propriedade.

ownerType
Type

O tipo de proprietário que está registrando a propriedade de dependência.

Retornos

DependencyProperty

Um identificador de propriedade de dependência que deve ser usado para definir o valor de um campo public static readonly em sua classe. Em seguida, esse identificador será usado para referenciar a propriedade de dependência mais tarde, para operações como a configuração do valor de forma programática ou a obtenção de metadados.

Exemplos

O exemplo a seguir registra uma propriedade anexada em uma classe abstrata usando essa RegisterAttached assinatura.

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

Comentários

Uma propriedade anexada é um conceito de propriedade definido pela XAML (Extensible Application Markup Language). O WPF implementa propriedades anexadas como propriedades de dependência. Como as propriedades anexadas ao WPF são propriedades de dependência, elas podem ter metadados aplicados que podem ser usados pelo sistema de propriedades gerais para operações como características de layout de relatório. Para obter mais informações, consulte Visão geral das propriedades anexadas.

Para obter mais informações sobre o registro de propriedade de dependência, consulte DependencyProperty.

Confira também

Aplica-se a

RegisterAttached(String, Type, Type, PropertyMetadata)

Registra uma propriedade anexada com o nome de propriedade, tipo de propriedade, tipo de proprietário e metadados de propriedade especificados.

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

Parâmetros

name
String

O nome da propriedade de dependência a ser registrada.

propertyType
Type

O tipo da propriedade.

ownerType
Type

O tipo de proprietário que está registrando a propriedade de dependência.

defaultMetadata
PropertyMetadata

Os metadados de propriedade da propriedade de dependência. Isso pode incluir o valor padrão, bem como outras características.

Retornos

DependencyProperty

Um identificador de propriedade de dependência que deve ser usado para definir o valor de um campo public static readonly em sua classe. Em seguida, esse identificador será usado para referenciar a propriedade de dependência mais tarde, para operações como a configuração do valor de forma programática ou a obtenção de metadados.

Comentários

Uma propriedade anexada é um conceito de propriedade definido pela XAML (Extensible Application Markup Language). O WPF implementa propriedades anexadas como propriedades de dependência. Como as propriedades anexadas ao WPF são propriedades de dependência, elas podem ter metadados aplicados que podem ser usados pelo sistema de propriedades gerais para operações como características de layout de relatório. Para obter mais informações, consulte Visão geral das propriedades anexadas.

Para obter mais informações sobre o registro de propriedade de dependência, consulte DependencyProperty.

Usar RegisterAttached para propriedades de dependência herdadas de valor

Um cenário específico para registrar uma propriedade de dependência com RegisterAttached , em vez disso, é dar suporte à herança de valor de Register propriedade. Você deve registrar propriedades de dependência herdadas de valor, RegisterAttached mesmo que a classe defina acessadores de wrapper de propriedade que expõem a propriedade de dependência e, mesmo que você não pretenda expor métodos estáticos Get* e Set* para fornecer acessadores de suporte à propriedade anexada verdadeiros. Embora a herança do valor da propriedade possa parecer funcionar para propriedades de dependência não desnatadas, o comportamento de herança de uma propriedade não desnaturada por meio de determinados limites de elemento na árvore de runtime é indefinido. Registrar a propriedade como anexada efetivamente torna a propriedade anexada uma propriedade global ao sistema de propriedades e garante que a herança do valor da propriedade funcione em todos os limites em uma árvore de elementos. Sempre use RegisterAttached para registrar propriedades em que você especifica Inherits nos metadados. Para obter mais informações, consulte Herança do valor da propriedade.

Confira também

Aplica-se a

RegisterAttached(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Registra uma propriedade anexada com o tipo de propriedade, o tipo de proprietário, os metadados de propriedade e o retorno de chamada de validação de valor da propriedade especificados.

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

Parâmetros

name
String

O nome da propriedade de dependência a ser registrada.

propertyType
Type

O tipo da propriedade.

ownerType
Type

O tipo de proprietário que está registrando a propriedade de dependência.

defaultMetadata
PropertyMetadata

Os metadados de propriedade da propriedade de dependência. Isso pode incluir o valor padrão, bem como outras características.

validateValueCallback
ValidateValueCallback

Uma referência a um retorno de chamada que deve executar uma validação personalizada do valor da propriedade de dependência além da validação de tipo comum.

Retornos

DependencyProperty

Um identificador de propriedade de dependência que deve ser usado para definir o valor de um campo public static readonly em sua classe. Em seguida, esse identificador será usado para referenciar a propriedade de dependência mais tarde, para operações como a configuração do valor de forma programática ou a obtenção de metadados.

Exemplos

O exemplo a seguir registra uma propriedade anexada em uma classe abstrata usando essa RegisterAttached assinatura. Essa propriedade anexada é uma propriedade de tipo de enumeração e o registro adiciona um retorno de chamada de validação para verificar se o valor fornecido é um valor da enumeração.

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

Comentários

Uma propriedade anexada é um conceito de propriedade definido pela XAML (Extensible Application Markup Language). O WPF implementa propriedades anexadas como propriedades de dependência. Como as propriedades anexadas ao WPF são propriedades de dependência, elas podem ter metadados aplicados que podem ser usados pelo sistema de propriedades gerais para operações como características de layout de relatório. Para obter mais informações, consulte Visão geral das propriedades anexadas.

Para obter mais informações sobre o registro de propriedade de dependência, consulte DependencyProperty.

Usar RegisterAttached para propriedades de dependência herdadas de valor

Um cenário específico para registrar uma propriedade de dependência com RegisterAttached , em vez disso, é dar suporte à herança de valor de Register propriedade. Você deve registrar propriedades de dependência herdadas de valor, RegisterAttached mesmo que a classe defina acessadores de wrapper de propriedade que expõem a propriedade de dependência e, mesmo que você não pretenda expor métodos estáticos Get* e Set* para fornecer acessadores de suporte à propriedade anexada verdadeiros. Embora a herança do valor da propriedade possa parecer funcionar para propriedades de dependência não desnatadas, o comportamento de herança de uma propriedade não desnaturada por meio de determinados limites de elemento na árvore de runtime é indefinido. Registrar a propriedade como anexada efetivamente torna a propriedade anexada uma propriedade global ao sistema de propriedades e garante que a herança do valor da propriedade funcione em todos os limites em uma árvore de elementos. Sempre use RegisterAttached para registrar propriedades em que você especifica Inherits nos metadados. Para obter mais informações, consulte Herança do valor da propriedade.

Confira também

Aplica-se a