Sdílet prostřednictvím


IQueryAmbient Rozhraní

Definice

Dotazuje se, zda má být zadaná vlastnost v aktuálním oboru považována za okolí.

public interface class IQueryAmbient
public interface IQueryAmbient
type IQueryAmbient = interface
Public Interface IQueryAmbient
Odvozené

Poznámky

Účelem mechanismu vlastností okolí je zlepšit dobu analýzy tím, že informuje zapisovač objektů XAML, aby se zabránilo vytváření instancí určitých objektů, v případech, kdy je známo, že objekty jsou pro hodnoty, které jsou dočasné a nejsou užitečné pro typickou aplikaci za běhu. Za normálních okolností by vyhledávání XAML nebo zpracování objektu get vlastnosti GET potřebovalo vytvořit instanci takových objektů, aby se v grafu objektu vyplnily hodnoty připravené k použití.

IQueryAmbient má jednoho člena: IsAmbientPropertyAvailable.

IQueryAmbient je paralelní mechanismus k AmbientAttribute. IQueryAmbient je specializovaný mechanismus, který zabraňuje použití reflexe k určení informací a může také jednat situačně (daný objekt může zvolit sestavu true nebo false pro IsAmbientPropertyAvailable), zatímco atribut je v podstatě statická analýza). AmbientAttribute je obecný mechanismus, který můžou používat zapisovače objektů XAML a který obvykle koreluje s vyhrazenými vlastnostmi IsAmbient systému typů XAML a IsAmbient.

Implementace WPF IQueryAmbient

Ve WPF IQueryAmbient se používá pro proces vyhledávání slovníku prostředků. Proces vyhledávání získá po sobě jdoucí Resources hodnoty v rámci logického stromu WPF a pracuje směrem ke kořenovému adresáři oboru prostředku, dokud se nenajde klíč nebo dokud se zjistí, že klíč neexistuje v oboru. Za normálních okolností by to vyžadovalo vytvoření ResourceDictionary instance pokaždé, aby se získaly výsledky. Deklarování obsahu Resources tak dlouho, dokud Resources existuje, optimalizuje tento proces vyhledávání. Ve WPF je toto rozhraní implementováno v následujících případech:

Metody

IsAmbientPropertyAvailable(String)

Dotazuje se, zda lze zadanou pojmenovanou vlastnost považovat za okolní v aktuálním oboru.

Platí pro

Viz také