IXamlNameResolver Interfejs
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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. |