Ler em inglês

Compartilhar via


IQueryAmbient Interface

Definição

Consulta se uma propriedade especificada deve ser tratada como ambiente no escopo atual.

C#
public interface IQueryAmbient
Derivado

Comentários

A finalidade de um mecanismo de propriedade de ambiente é melhorar o tempo de análise informando um gravador de objeto XAML para evitar a instanciação de determinados objetos, nos casos em que se sabe que os objetos são para valores temporários e não úteis para um aplicativo de tempo de execução típico. Normalmente, pesquisas XAML ou processamento XAML de um acessador get de propriedade precisariam criar uma instância desses objetos para preencher a representação do grafo de objeto com valores prontos para uso.

IQueryAmbient tem um membro: IsAmbientPropertyAvailable.

IQueryAmbient é um mecanismo paralelo para AmbientAttribute. IQueryAmbient é o mecanismo especializado que evita o uso da reflexão para determinar informações e também pode agir situacionalmente (um determinado objeto pode optar por relatar true ou false para IsAmbientPropertyAvailable), enquanto o atributo é essencialmente análise estática). AmbientAttribute é o mecanismo geral que pode ser usado por gravadores de objetos XAML e que normalmente se correlaciona com as propriedades IsAmbient do sistema de tipo XAML dedicadas e IsAmbient.

Implementações do WPF de IQueryAmbient

No WPF, IQueryAmbient é usado para o processo de pesquisa do dicionário de recursos. O processo de pesquisa obtém valores sucessivos Resources em toda a árvore lógica do WPF, trabalhando em direção à raiz do escopo do recurso até que uma chave seja encontrada ou a chave seja determinada como não existir no escopo. Normalmente, fazer isso exigiria uma instanciação de cada ResourceDictionary vez para receber os resultados. Declarar o conteúdo de Resources como ambiente desde Resources que exista otimiza esse processo de pesquisa. No WPF, essa interface é implementada nos seguintes casos:

Métodos

IsAmbientPropertyAvailable(String)

Consulta se uma propriedade nomeada especificada pode ser considerada ambiente no escopo atual.

Aplica-se a

Produto Versões
.NET Framework 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Confira também