Windows Dev Center

Este artigo foi traduzido por máquina. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original. Mais informações.
Tradução
Original
Informações
O tópico solicitado está sendo mostrado abaixo. No entanto, este tópico não está incluído nesta biblioteca.

Classe DependencyObject

Representa um objeto que participa do propriedade de dependência sistema.

Namespace:  System.Windows
Assembly:  WindowsBase (em WindowsBase.dll)
XMLNS para XAML http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

[NameScopePropertyAttribute("NameScope", typeof(NameScope))]
public class DependencyObject : DispatcherObject
<DependencyObject .../>

O tipo DependencyObject expõe os membros a seguir.

  NomeDescrição
Método públicoDependencyObjectInicializa uma nova instância da classe DependencyObject.
Superior

  NomeDescrição
Propriedade públicaDependencyObjectType Obtém o DependencyObjectType que envolve o tipo de instância da CLR.
Propriedade públicaDispatcherObtém o Dispatcher esse DispatcherObject está associado. (Herdado de DispatcherObject.)
Propriedade públicaIsSealed Obtém um valor que indica se essa instância atualmente é selada (somente leitura).
Superior

  NomeDescrição
Método públicoCheckAccessDetermina se o segmento de chamada tem acesso a este DispatcherObject. (Herdado de DispatcherObject.)
Método públicoClearValue(DependencyProperty)Limpa o valor local de uma propriedade. A propriedade a ser limpa é especificada por um identificador da DependencyProperty.
Método públicoClearValue(DependencyPropertyKey)Limpa o valor local de uma propriedade somente leitura. A propriedade a ser limpa é especificada por uma DependencyPropertyKey.
Método públicoCoerceValueConverte o valor especificado propriedade de dependência. Isso é feito chamando qualquer CoerceValueCallback especificada na metadados de propriedade para a propriedade de dependência conforme ela existe na chamada de função DependencyObject.
Método públicoEqualsDetermina se um fornecido DependencyObject é equivalente à atual DependencyObject. (Substitui Object.Equals(Object).)
Método protegidoFinalize Permite um objeto tentar liberar recursos e executar outras operações de limpeza antes que ele seja recuperado pela coleta de lixo. (Herdado de Object.)
Método públicoGetHashCodeObtém um código de hash para este DependencyObject. (Substitui Object.GetHashCode().)
Método públicoGetLocalValueEnumeratorCria um enumerador especializado para determinar quais propriedades de dependência localmente têm definir valores nessa DependencyObject.
Método públicoGetType Obtém o Type da instância atual. (Herdado de Object.)
Método públicoGetValueRetorna o valor atual de efetivo de um propriedade de dependência nesta instância de um DependencyObject.
Método públicoInvalidatePropertyAvalia o valor efetivo de propriedade de dependência especificado
Método protegidoMemberwiseCloneCria uma cópia superficial do Object atual. (Herdado de Object.)
Método protegidoOnPropertyChangedChamado sempre que o valor efetivo de qualquer propriedade de dependência sobre isso DependencyObject foi atualizado. A propriedade de dependência específicos que alterado é relatada nos dados de evento.
Método públicoReadLocalValueRetorna o valor de local de um propriedade de dependência, se ele existir.
Método públicoSetCurrentValueDefine o valor de um propriedade de dependência sem alterar sua fonte de valor.
Método públicoSetValue(DependencyProperty, Object)Define o valor de local de um propriedade de dependência, especificado por seu identificador de propriedade de dependência.
Método públicoSetValue(DependencyPropertyKey, Object)Define o valor de local de somente leitura propriedade de dependência, especificado pelo DependencyPropertyKey identificador de propriedade de dependência.
Método protegidoShouldSerializePropertyRetorna um valor que indica se os processos de serialização devem serializar o valor para o fornecido propriedade de dependência.
Método públicoToStringRetorna uma string que representa o objeto atual. (Herdado de Object.)
Método públicoVerifyAccessImpõe que o segmento de chamada tem acesso a este DispatcherObject. (Herdado de DispatcherObject.)
Superior

O DependencyObject classe permite que Windows Presentation Foundation (WPF) serviços do sistema de propriedade em suas muitas classes derivadas.

A função principal do sistema de propriedade é para calcular os valores das propriedades e fornecer uma notificação do sistema sobre valores que foram alterados. Outra classe de chave que participa do sistema de propriedade é DependencyPropertyDependencyProperty permite que o registro de propriedades de dependência no sistema propriedade e fornece identificação e informações sobre cada propriedade de dependência, enquanto DependencyObject como uma classe base permite que objetos para usar as propriedades de dependência.

DependencyObject serviços e as características incluem o seguinte:

  • Suporte de hospedagem de propriedade de dependência. Você pode registrar um propriedade de dependência chamando o Register método e armazenando o valor de retorno do método como um campo estático público na sua classe.

  • Suporte de hospedagem de propriedade anexada. Você pode registrar um anexado a propriedade chamando o RegisterAttached método e armazenando o valor de retorno do método como um campo estático público somente leitura na sua classe. (Também há requisitos adicionais de membro. Observe que isso representa um WPF a implementação específica para propriedades anexadas. Para obter detalhes, consulte:Visão geral das propriedades anexadas. A propriedade anexada, em seguida, pode ser definida em qualquer classe que deriva de DependencyObject.

  • Obter, definir e, em seguida, desmarque os métodos de utilitário para valores de qualquer Propriedades de dependência que existe o DependencyObject.

  • Metadados, coagir o suporte de valor, notificação de propriedade alterada e retornos de chamada de substituição para Propriedades de dependência ou anexado propriedades. Além disso, o DependencyObject classe facilita os metadados da propriedade-proprietário de uma propriedade de dependência.

  • Uma classe base comum para classes derivadas de ContentElement, Freezable, ou Visual. (UIElement, outra classe elemento base, tem uma hierarquia de classes que inclui Visual.)

O exemplo a seguir deriva de DependencyObject para criar uma nova classe abstrata. A classe, em seguida, registra uma propriedade anexada e inclui suporte membros para essa propriedade anexado.


public abstract class AquariumObject3 : DependencyObject
{
    public enum Bouyancy
    {
        Floats,
        Sinks,
        Drifts
    }
    public static readonly DependencyProperty BouyancyProperty = DependencyProperty.RegisterAttached(
      "Bouyancy",
      typeof(Bouyancy),
      typeof(AquariumObject3),
      new FrameworkPropertyMetadata(Bouyancy.Floats, FrameworkPropertyMetadataOptions.AffectsArrange),
      new ValidateValueCallback(ValidateBouyancy)
    );
    public static void SetBouyancy(UIElement element, Bouyancy value)
    {
        element.SetValue(BouyancyProperty, value);
    }
    public static Bouyancy GetBouyancy(UIElement element)
    {
        return (Bouyancy)element.GetValue(BouyancyProperty);
    }
    private static bool ValidateBouyancy(object value)
    {
        Bouyancy bTest = (Bouyancy) value;
        return (bTest == Bouyancy.Floats || bTest == Bouyancy.Drifts || bTest==Bouyancy.Sinks);
    }
    public static readonly DependencyProperty IsDirtyProperty = DependencyProperty.Register(
      "IsDirty",
      typeof(Boolean),
      typeof(AquariumObject3)
    );
}


.NET Framework

Com suporte em: 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Com suporte em: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Função Server Core sem suporte), Windows Server 2008 R2 (Função Server Core com suporte com o SP1 ou posterior, Itanium sem suporte)

O .NET Framework não oferece suporte a todas as versões de cada plataforma. Para obter uma lista das versões com suporte, consulte Requisitos do sistema do .NET Framework.

Qualquer estático (Shared no Visual Basic) membro público desse tipo é thread-safe. Não há garantia de que qualquer membro de instância seja thread-safe.

Contribuições da comunidade

Mostrar:
© 2015 Microsoft