DependencyProperty DependencyProperty DependencyProperty DependencyProperty Class

Definição

Representa uma propriedade que pode ser definida por meio de métodos como estilos, vinculação de dados, animação e herança.Represents a property that can be set through methods such as, styling, data binding, animation, and inheritance.

public ref class DependencyProperty sealed
[System.ComponentModel.TypeConverter("System.Windows.Markup.DependencyPropertyConverter, PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")]
[System.ComponentModel.TypeConverter("System.Windows.Markup.DependencyPropertyConverter, PresentationFramework, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")]
public sealed class DependencyProperty
type DependencyProperty = class
Public NotInheritable Class DependencyProperty
Herança
DependencyPropertyDependencyPropertyDependencyPropertyDependencyProperty
Atributos

Comentários

Um DependencyProperty oferece suporte aos seguintes recursos Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF)no:A DependencyProperty supports the following capabilities in Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF):

  • A propriedade pode ser definida em um estilo.The property can be set in a style. Para obter mais informações, consulte Estilo e modelagem.For more information, see Styling and Templating.

  • A propriedade pode ser definida por meio da vinculação de dados.The property can be set through data binding. Para obter mais informações sobre propriedades de dependência de associação de dados, consulte Como: Associe as propriedades de dois controles.For more information about data binding dependency properties, see How to: Bind the Properties of Two Controls.

  • A propriedade pode ser definida com uma referência de recurso dinâmico.The property can be set with a dynamic resource reference. Para obter mais informações, consulte Recursos XAML.For more information, see XAML Resources.

  • A propriedade pode herdar seu valor automaticamente de um elemento pai na árvore de elementos.The property can inherit its value automatically from a parent element in the element tree. Para obter mais informações, consulte Herança do valor da propriedade.For more information, see Property Value Inheritance.

  • A propriedade pode ser animada.The property can be animated. Para obter mais informações, consulte Visão geral de animação.For more information, see Animation Overview.

  • A propriedade pode relatar quando o valor anterior da propriedade tiver sido alterado e o valor da propriedade puder ser forçado.The property can report when the previous value of the property has been changed and the property value can be coerced. Para obter mais informações, consulte Retornos de chamada da propriedade de dependência e validação.For more information, see Dependency Property Callbacks and Validation.

  • A propriedade relata informações para WPFWPF, como se a alteração de um valor de propriedade deve exigir que o sistema de layout relate os elementos visuais de um elemento.The property reports information to WPFWPF, such as whether changing a property value should require the layout system to recompose the visuals for an element.

  • A propriedade recebe suporte no WPF Designer for Visual StudioWPF Designer for Visual Studio.The property receives support in the WPF Designer for Visual StudioWPF Designer for Visual Studio. Por exemplo, a propriedade pode ser editada na janela Propriedades .For example, the property can be edited in the Properties window.

Para saber mais sobre propriedades de dependência, consulte visão geral das propriedades de dependência.To learn more about dependency properties, see Dependency Properties Overview. Se você quiser que as propriedades em seus tipos personalizados ofereçam suporte aos recursos na lista anterior, você deve criar uma propriedade de dependência.If you want properties on your custom types to support the capabilities in the preceding list, you should create a dependency property. Para saber como criar propriedades de dependência personalizadas, consulte Propriedades de dependência personalizadas.To learn how to create custom dependency properties, see Custom Dependency Properties.

Uma propriedade anexada é uma propriedade que permite que qualquer objeto Relate informações ao tipo que define a propriedade anexada.An attached property is a property that enables any object to report information to the type that defines the attached property. No WPFWPF, qualquer tipo que herda de DependencyObject pode usar uma propriedade anexada, independentemente de o tipo herdar do tipo que define a propriedade.In WPFWPF, any type that inherits from DependencyObject can use an attached property regardless of whether the type inherits from the type that defines the property. Uma propriedade anexada é um recurso do XAMLXAML idioma.An attached property is a feature of the XAMLXAML language. Para definir uma propriedade anexada XAMLXAMLno, use o ownerType. sintaxe propertyName .To set an attached property in XAMLXAML, use the ownerType.propertyName syntax. Um exemplo de uma propriedade anexada é DockPanel.Dock a propriedade.An example of an attached property is the DockPanel.Dock property. Se você quiser criar uma propriedade que possa ser usada em todos os DependencyObject tipos, deverá criar uma propriedade anexada.If you want to create a property that can be used on all DependencyObject types, then you should create an attached property. Para saber mais sobre propriedades anexadas, incluindo como criá-las, consulte visão geral de propriedades anexadas.To learn more about attached properties, including how to create them, see Attached Properties Overview.

Uso do Atributo XAMLXAML Attribute Usage

<object property="dependencyPropertyName"/>  

- ou --or-

<object property="ownerType.dependencyPropertyName"/>  

- ou --or-

<object property="attachedPropertyOwnerType.attachedPropertyName"/>  

Valores XAMLXAML Values

dependencyPropertyName
Uma cadeia de caracteres que DependencyProperty.Name especifica o da propriedade de dependência desejada.A string that specifies the DependencyProperty.Name of the desired dependency property. Isso pode ser precedido por um prefixo de namespace XML se a propriedade não estiver no namespace XML padrão (para obter detalhes, consulte namespaces XAML e mapeamento de namespace para WPF XAML.)This can be preceded by an XML namespace prefix if the property is not in the default XML namespace (for details, see XAML Namespaces and Namespace Mapping for WPF XAML.)

ownerType.dependencyPropertyNameownerType.dependencyPropertyName
Uma cadeia de caracteres que especifica um tipo de proprietário de uma propriedade de dependência, um ponto (. DependencyProperty.Name), em seguida, o.A string that specifies an owner type of a dependency property, a dot (.), then the DependencyProperty.Name. ownerTypetambém pode ser precedido por um prefixo de namespace XML.ownerType can also be preceded by an XML namespace prefix. Esse uso é específico para estilos e modelos de ligação tardia, em que o proprietário da propriedade de dependência deve ser especificado para o contexto de análise TargetType porque o ainda não é conhecido.This usage is particular to late-bound styles and templates, where the owner of the dependency property must be specified for parsing context because the TargetType is not yet known. Para obter mais informações, consulte Estilo e modelagem.For more information, see Styling and Templating.

attachedPropertyOwnerType .attachedPropertyOwnerType . attachedPropertyName
Uma cadeia de caracteres que especifica o proprietário de uma propriedade anexada, um ponto (.), em seguida, o nome da propriedade anexada.A string that specifies the owner of an attached property, a dot (.), then the attached property name. attachedPropertyOwnerTypetambém pode ser precedido por um prefixo de namespace XML.attachedPropertyOwnerType can also be preceded by an XML namespace prefix.

Campos

UnsetValue UnsetValue UnsetValue UnsetValue

Especifica um valor estático que é usado pelo sistema da propriedade WPFWPF em vez de null para indicar que a propriedade existe, mas não tem seu valor definido pelo sistema da propriedade.Specifies a static value that is used by the WPFWPF property system rather than null to indicate that the property exists, but does not have its value set by the property system.

Propriedades

DefaultMetadata DefaultMetadata DefaultMetadata DefaultMetadata

Obtém os metadados padrão da propriedade de dependência.Gets the default metadata of the dependency property.

GlobalIndex GlobalIndex GlobalIndex GlobalIndex

Obtém um valor gerado internamente que identifica exclusivamente a propriedade de dependência.Gets an internally generated value that uniquely identifies the dependency property.

Name Name Name Name

Obtém o nome da propriedade de dependência.Gets the name of the dependency property.

OwnerType OwnerType OwnerType OwnerType

Obtém o tipo do objeto que registrou a propriedade de dependência com o sistema de propriedade ou que adicionou a si próprio como proprietário da propriedade.Gets the type of the object that registered the dependency property with the property system, or added itself as owner of the property.

PropertyType PropertyType PropertyType PropertyType

Obtém o tipo que a propriedade de dependência usa para seu valor.Gets the type that the dependency property uses for its value.

ReadOnly ReadOnly ReadOnly ReadOnly

Obtém um valor que indica se a propriedade de dependência identificada por essa instância DependencyProperty é uma propriedade de dependência somente leitura.Gets a value that indicates whether the dependency property identified by this DependencyProperty instance is a read-only dependency property.

ValidateValueCallback ValidateValueCallback ValidateValueCallback ValidateValueCallback

Obtém o retorno de chamada de validação do valor da propriedade de dependência.Gets the value validation callback for the dependency property.

Métodos

AddOwner(Type) AddOwner(Type) AddOwner(Type) AddOwner(Type)

Adiciona outro tipo como um proprietário de uma propriedade de dependência que já foi registrada.Adds another type as an owner of a dependency property that has already been registered.

AddOwner(Type, PropertyMetadata) AddOwner(Type, PropertyMetadata) AddOwner(Type, PropertyMetadata) AddOwner(Type, PropertyMetadata)

Adiciona outro tipo como um proprietário de uma propriedade de dependência que já foi registrada, fornecendo metadados de propriedade de dependência para a propriedade de dependência como ela existe no tipo do proprietário fornecido.Adds another type as an owner of a dependency property that has already been registered, providing dependency property metadata for the dependency property as it will exist on the provided owner type.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Retorna um código hash para este DependencyProperty.Returns a hash code for this DependencyProperty.

GetMetadata(DependencyObject) GetMetadata(DependencyObject) GetMetadata(DependencyObject) GetMetadata(DependencyObject)

Retorna os metadados para essa propriedade de dependência como ela existe na instância do objeto especificado.Returns the metadata for this dependency property as it exists on the specified object instance.

GetMetadata(DependencyObjectType) GetMetadata(DependencyObjectType) GetMetadata(DependencyObjectType) GetMetadata(DependencyObjectType)

Retorna os metadados para essa propriedade de dependência como ela existe em um tipo especificado.Returns the metadata for this dependency property as it exists on a specified type.

GetMetadata(Type) GetMetadata(Type) GetMetadata(Type) GetMetadata(Type)

Retorna os metadados para essa propriedade de dependência uma vez que ela existe em um tipo existente especificado.Returns the metadata for this dependency property as it exists on a specified existing type.

GetType() GetType() GetType() GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(Inherited from Object)
IsValidType(Object) IsValidType(Object) IsValidType(Object) IsValidType(Object)

Determina se um valor especificado é aceitável para o tipo desta propriedade de dependência, conforme verificado em relação ao tipo de propriedade fornecido no registro de propriedade de dependência original.Determines whether a specified value is acceptable for this dependency property's type, as checked against the property type provided in the original dependency property registration.

IsValidValue(Object) IsValidValue(Object) IsValidValue(Object) IsValidValue(Object)

Determina se o valor fornecido é aceito para o tipo de propriedade por meio de verificação de tipo básica e também potencialmente se ele está dentro do intervalo permitido de valores para esse tipo.Determines whether the provided value is accepted for the type of property through basic type checking, and also potentially if it is within the allowed range of values for that type.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Inherited from Object)
OverrideMetadata(Type, PropertyMetadata) OverrideMetadata(Type, PropertyMetadata) OverrideMetadata(Type, PropertyMetadata) OverrideMetadata(Type, PropertyMetadata)

Especifica os metadados alternativos para essa propriedade de dependência quando está presente em instâncias de um tipo especificado, substituindo os metadados existentes para a propriedade de dependência conforme ela foi herdada dos tipos base.Specifies alternate metadata for this dependency property when it is present on instances of a specified type, overriding the metadata that existed for the dependency property as it was inherited from base types.

OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey) OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey) OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey) OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey)

Fornece os metadados alternativos para uma propriedade de dependência somente leitura quando ela existe em instâncias de um tipo especificado, substituindo os metadados que foram fornecidos no registro de propriedade de dependência inicial.Supplies alternate metadata for a read-only dependency property when it is present on instances of a specified type, overriding the metadata that was provided in the initial dependency property registration. Você deve passar o DependencyPropertyKey para a propriedade de dependência somente leitura para evitar gerar uma exceção.You must pass the DependencyPropertyKey for the read-only dependency property to avoid raising an exception.

Register(String, Type, Type) Register(String, Type, Type) Register(String, Type, Type) Register(String, Type, Type)

Registra uma propriedade de dependência com o nome de propriedade, tipo de propriedade e tipo de proprietário especificados.Registers a dependency property with the specified property name, property type, and owner type.

Register(String, Type, Type, PropertyMetadata) Register(String, Type, Type, PropertyMetadata) Register(String, Type, Type, PropertyMetadata) Register(String, Type, Type, PropertyMetadata)

Registra uma propriedade de dependência com o nome de propriedade, tipo de propriedade, tipo de proprietário e metadados de propriedade especificados.Registers a dependency property with the specified property name, property type, owner type, and property metadata.

Register(String, Type, Type, PropertyMetadata, ValidateValueCallback) Register(String, Type, Type, PropertyMetadata, ValidateValueCallback) Register(String, Type, Type, PropertyMetadata, ValidateValueCallback) Register(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Registra uma propriedade de dependência com o nome da propriedade, tipo de propriedade, tipo de proprietário, metadados de propriedade especificados e um retorno de chamada de validação do valor da propriedade.Registers a dependency property with the specified property name, property type, owner type, property metadata, and a value validation callback for the property.

RegisterAttached(String, Type, Type) RegisterAttached(String, Type, Type) RegisterAttached(String, Type, Type) RegisterAttached(String, Type, Type)

Registra uma propriedade anexada com o nome de propriedade, o tipo de propriedade e o tipo de proprietário especificados.Registers an attached property with the specified property name, property type, and owner type.

RegisterAttached(String, Type, Type, PropertyMetadata) RegisterAttached(String, Type, Type, PropertyMetadata) RegisterAttached(String, Type, Type, PropertyMetadata) 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.Registers an attached property with the specified property name, property type, owner type, and property metadata.

RegisterAttached(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterAttached(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterAttached(String, Type, Type, PropertyMetadata, ValidateValueCallback) 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.Registers an attached property with the specified property type, owner type, property metadata, and value validation callback for the property.

RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata)

Registra uma propriedade anexada somente leitura com o tipo de propriedade, tipo de proprietário e metadados de propriedade especificados.Registers a read-only attached property, with the specified property type, owner type, and property metadata.

RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Registra uma propriedade anexada somente leitura com o tipo de propriedade, tipo de proprietário, metadados de propriedade e retorno de chamada especificados.Registers a read-only attached property, with the specified property type, owner type, property metadata, and a validation callback.

RegisterReadOnly(String, Type, Type, PropertyMetadata) RegisterReadOnly(String, Type, Type, PropertyMetadata) RegisterReadOnly(String, Type, Type, PropertyMetadata) RegisterReadOnly(String, Type, Type, PropertyMetadata)

Registra uma propriedade de dependência somente leitura com o tipo da propriedade, tipo de proprietário e metadados de propriedade especificados.Registers a read-only dependency property, with the specified property type, owner type, and property metadata.

RegisterReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Registra uma propriedade de dependência somente leitura com o tipo de propriedade, tipo de proprietário, metadados de propriedade e retorno de chamada especificados.Registers a read-only dependency property, with the specified property type, owner type, property metadata, and a validation callback.

ToString() ToString() ToString() ToString()

Retorna a representação de cadeia de caracteres da propriedade de dependência.Returns the string representation of the dependency property.

Aplica-se a

Veja também