Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Udostępnia wartość dla dowolnego atrybutu XAML, oceniając odwołanie do zasobu pochodzącego z niestandardowej implementacji wyszukiwania zasobów. Wyszukiwanie zasobów jest wykonywane przez implementację klasy CustomXamlResourceLoader .
Użycie atrybutu XAML
<object property="{CustomResource key}" .../>
Wartości XAML
| Termin | Description |
|---|---|
| klucz | Klucz zasobu, o który zażądano. Sposób, w jaki klucz jest początkowo przypisany, jest specyficzny dla implementacji klasy CustomXamlResourceLoader , która jest obecnie zarejestrowana do użycia. |
Uwagi
CustomResource to technika uzyskiwania wartości zdefiniowanych w innym miejscu w niestandardowym repozytorium zasobów. Ta technika jest stosunkowo zaawansowana i nie jest używana przez większość scenariuszy aplikacji Środowiska uruchomieniowego systemu Windows.
Sposób rozpoznawania elementu CustomResource w słowniku zasobów nie jest opisany w tym temacie, ponieważ może się to znacznie różnić w zależności od sposobu implementacji modułu CustomXamlResourceLoader .
Metoda GetResource implementacji CustomXamlResourceLoader jest wywoływana przez analizator XAML środowiska uruchomieniowego systemu Windows za każdym razem, gdy napotka użycie {CustomResource} w kodzie znaczników.
Identyfikator resourceId, który jest przekazywany do metody GetResource, pochodzi z argumentu klucza, a inne parametry wejściowe pochodzą z kontekstu, takiego jak właściwość, do której jest stosowane użycie.
Użycie {CustomResource} nie działa domyślnie (podstawowa implementacja getResource jest niekompletna). Aby dokonać prawidłowego {CustomResource} odwołania, należy wykonać każdą z następujących czynności:
- Utwórz klasę niestandardową z klasy CustomXamlResourceLoader i zastąpij metodę GetResource . Nie należy wywoływać klasy bazowej w implementacji.
- Ustaw wartość CustomXamlResourceLoader.Current, aby odwołać się do swojej klasy w logice inicjalizacji. Musi się to zdarzyć przed załadowaniem dowolnego kodu XAML na poziomie strony zawierającego
{CustomResource}użycie rozszerzenia. Jednym z miejsc ustawiania parametru CustomXamlResourceLoader.Current jest konstruktor podklasy Aplikacji wygenerowany dla Ciebie w szablonach kodu za pomocą pliku App.xaml. - Teraz możesz użyć
{CustomResource}rozszerzeń w języku XAML ładowanych przez aplikację jako strony lub z słowników zasobów XAML.
CustomResource to rozszerzenie znaczników. Rozszerzenia znaczników są zwykle wdrażane, gdy istnieje potrzeba przetworzenia wartości atrybutów, aby były inne niż wartości dosłowne lub nazwy procedur obsługi lub funkcji, a potrzeba ta jest bardziej globalna niż tylko zastosowanie konwerterów typów do określonych typów lub właściwości. Wszystkie rozszerzenia znaczników w języku XAML używają znaków "{" i "}" w składni atrybutu, która jest konwencją, zgodnie z którą procesor XAML rozpoznaje, że rozszerzenie znaczników musi przetworzyć atrybut.
Tematy pokrewne
Windows developer