Udostępnij za pośrednictwem


IXamlNameResolver Interfejs

Definicja

Opisuje usługę, która może zwracać obiekty określone przez nazwę XAML lub alternatywnie, zwraca token, który odwraca rozpoznawanie nazw. Usługa może również zwrócić wyliczalny zestaw wszystkich nazwanych obiektów znajdujących się w nazwie XAML.

public interface class IXamlNameResolver
public interface IXamlNameResolver
type IXamlNameResolver = interface
Public Interface IXamlNameResolver

Uwagi

Ten interfejs nie jest przeznaczony do zewnętrznej implementacji typowych scenariuszy XAML, ponieważ jest usługą. Ta usługa umożliwia rozszerzenia znaczników i konwertery typów rozpoznawania nazw XAML do innych obiektów z tego samego źródła XAML, gdy są one nadal w reprezentacji węzła XAML. Usługa może służyć do rozpoznawania odwołań do przekazywania dla dowolnego mechanizmu, który opiera się na nazwach XAML w celu nieliniowego dostępu do otaczającej produkcji XAML. Aby uzyskać więcej informacji, zobacz Konwertery typów i Rozszerzenia znaczników dla języka XAML.

Konwertery typów i rozszerzenia znaczników mogą wysyłać zapytania o IXamlNameResolver usługę jako usługę w kontekście usługi udostępnianym przez składnik zapisywania obiektów XAML, gdy składnik zapisywania obiektów XAML wywołuje zachowanie konwersji wartości. Aby uzyskać więcej informacji, zobacz Konwertery typów i rozszerzenia znaczników dla XAML i kontekstów usługi dostępne dla konwerterów typów i rozszerzeń znaczników.

Ta usługa uwidacznia interfejs API, który może odroczyć rozpoznawanie nazw. Metafora zaimplementowana przez usługę polega na tym, że nazwy, których nie można rozpoznać w pierwszym przekazaniu względem częściowego grafu obiektu nazw, powinny być przechowywane i używane do tworzenia tokenu naprawy. W domyślnym zachowaniu wszystkie takie nazwy są przesyłane do innej próby rozwiązania w drugim przebiegu. W drugim przebiegu ogólny graf obiektów nazw jest ukończony, a wszystkie tokeny naprawy są w stanie rozpoznać.

Uwaga

Nawet jeśli są one dozwolone przez określoną implementację, odwołania do przodu w języku XAML nieuchronnie mają konsekwencje dotyczące wydajności. Najlepszym rozwiązaniem dla języka XAML w jakości produkcyjnej jest unikanie przekazywania odwołań zawsze, gdy jest to możliwe.

Właściwości

IsFixupTokenAvailable

Pobiera wartość określającą, czy wywołanie GetFixupToken(IEnumerable<String>, Boolean) jest dostępne w celu rozpoznania nazwy w tokenie na potrzeby rozpoznawania dalej.

Metody

GetAllNamesAndValuesInScope()

Zwraca wyliczany zestaw wszystkich nazwanych obiektów w nazwie XAML.

GetFixupToken(IEnumerable<String>)

Zwraca obiekt, który może być poprawny dla niektórych wzorców znaczników, które generują odwołania do przodu.

GetFixupToken(IEnumerable<String>, Boolean)

Zwraca obiekt, który może być poprawny dla niektórych wzorców znaczników, które generują odwołania do przodu.

Resolve(String)

Rozpoznaje obiekt z odwołania do nazwy.

Resolve(String, Boolean)

Rozpoznaje obiekt z odwołania do nazwy i udostępnia wartość śledzenia, która zgłasza, czy obiekt jest w pełni zainicjowany na potrzeby grafu obiektów.

Zdarzenia

OnNameScopeInitializationComplete

Występuje, gdy procesor XAML zarejestrował wszystkie odpowiednie nazwy w zakresie nazw XAML kopii zapasowej.

Dotyczy

Zobacz też