AmbientPropertyValue Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Reporta informação sobre uma propriedade ambiente, como parte de uma IAmbientProvider implementação.
public ref class AmbientPropertyValue
public class AmbientPropertyValue
type AmbientPropertyValue = class
Public Class AmbientPropertyValue
- Herança
-
AmbientPropertyValue
Observações
AmbientPropertyValue representa um item de informação que é devolvido ao chamar um IAmbientProvider método de serviço. Os GetAll métodos retornam enumerações ou arrays de AmbientPropertyValue itens; os GetFirst métodos retornam um único AmbientPropertyValue.
Sobre as Propriedades Ambientais
Uma propriedade ambiente é uma propriedade cujo valor de propriedade deve estar disponível para o uso do conversor de valores na estrutura de nós XAML e no grafo-objeto por baixo dela. O conceito ambiente é relevante para um processador XAML durante a fase de escrita de objetos do caminho de carregamento ou a fase de serialização de um caminho de gravação.
Um tipo também pode ser atribuído como ambiente. Neste caso, todas as propriedades que utilizam o tipo atribuído são reportadas como ambientes.
No caso do caminho de carga, o valor da propriedade ambiente pode influenciar o valor produzido pelo grafo objeto de outras propriedades que existem por baixo dele numa estrutura de nó XAML. Quando processado como um fluxo de nós XAML, o conceito ambiente implica que o valor da propriedade ambiente deve estar disponível para conversores de tipos e extensões de marcação de StartObject para EndObject. De forma semelhante, um conversor de tipos ou extensão de marcação usada para o caminho de gravação pode consultar a propriedade ambiente e o seu valor. Portanto, o XAML produzido é uma melhor representação de ida e volta.
Pela sua definição de linguagem, o XAML não especifica a ordem em que os membros de um objeto devem ser processados. No entanto, qualquer valor de propriedade ambiente deve ser processado primeiro pelo leitor XAML para que o conversor de tipos e a utilização da extensão de marcação contidos noutras propriedades possam aceder a ele através do IAmbientProvider serviço.
DependsOn é um conceito semelhante que também influencia a ordem do processamento dos nós XAML. No entanto, DependsOn só pode ser usado para relações entre membros e nós entre pares; não pode influenciar todos os descendentes. Além disso, DependsOn influencia diretamente a definição de propriedades do grafo de objetos, enquanto a técnica ambiente depende de conversores de tipos ou extensões de marcação. Na técnica ambiente, deve também existir uma definição específica de conversor de tipo ou extensão de marcação. Cabe a cada conversor de tipos ou extensão de marcação determinar como o valor da propriedade ambiente deve ser interpretado e aplicado à localização do grafo de objetos onde é usado o conversor de tipos ou extensão de marcação.
Notas de uso do WPF
Um cenário de propriedade ambiente ilustrado no conjunto de funcionalidades WPF é Style.TargetType, que pode qualificar as pesquisas necessárias de nomes de propriedade para outros valores. Neste caso, o Style.TargetType valor qualifica os Setter.Property valores nos nós XAML por baixo. Setter.Property usa o comportamento do conversor de tipos para um DependencyProperty. Este comportamento acede ao valor ambiente Style.TargetType consultando GetFirstAmbientValue a partir de um contexto de serviço disponível para conversores de tipos e extensões de marcação.
Construtores
| Name | Description |
|---|---|
| AmbientPropertyValue(XamlMember, Object) |
Inicializa uma nova instância da AmbientPropertyValue classe. |
Propriedades
| Name | Description |
|---|---|
| RetrievedProperty |
Obtém o identificador de tipo XAML system (XamlMember) que representa a propriedade ambiente. |
| Value |
Obtém o valor da propriedade ambiente. |
Métodos
| Name | Description |
|---|---|
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |