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.
Program Windows Presentation Foundation (WPF) udostępnia obiekty Style i obiekty szablonu (FrameworkTemplate podklasy) jako sposób definiowania wizualnego wyglądu elementu w zasobach, dzięki czemu mogą być używane wielokrotnie. Z tego powodu atrybuty w języku XAML, które przyjmują typy Style i FrameworkTemplate, prawie zawsze odwołują się do zasobów istniejących stylów i szablonów, zamiast definiować nowe w sposób wbudowany.
Ograniczenia stylów wbudowanych i szablonów
W języku Extensible Application Markup Language (XAML) właściwości stylu i szablonu można technicznie ustawić na jeden z dwóch sposobów. Składnia atrybutów służy do odwołowania się do stylu zdefiniowanego w ramach zasobu, na przykład <obiektuStyle="{StaticResourcemyResourceKey}" .../>. Możesz też użyć składni elementów właściwości, aby zdefiniować styl w linii, na przykład:
<
obiektu>
<
obiektu.Style>
<
Style
.../>
</
obiektu.Style>
</
obiektu>
Użycie atrybutów jest znacznie bardziej powszechne. Styl zdefiniowany w ramach linii i niewystępujący w zasobach jest ograniczony wyłącznie do elementu, w którym się znajduje, i nie może być tak łatwo ponownie użyty, ponieważ nie posiada klucza zasobu. Ogólnie rzecz biorąc, styl zdefiniowany przez zasób jest bardziej wszechstronny i przydatny, i jest bardziej zgodny z ogólną zasadą modelu programowania Windows Presentation Foundation (WPF), która polega na oddzieleniu logiki programu w kodzie od projektu w znacznikach.
Zazwyczaj nie ma powodu, aby ustawić styl lub wbudowany szablon, nawet jeśli zamierzasz używać tego stylu lub szablonu tylko w tej lokalizacji. Większość elementów, które mogą przyjmować styl lub szablon, obsługuje również właściwość zawartości i model zawartości. Jeśli używasz tylko dowolnego drzewa logicznego tworzonego za pomocą stylów lub tworzenia szablonów raz, łatwiej byłoby po prostu wypełnić tę właściwość zawartości równoważnymi elementami podrzędnymi w znacznikach bezpośrednich. Spowoduje to całkowite obejście mechanizmów stylu i szablonu.
Inne składnie włączone przez rozszerzenia znaczników, które zwracają obiekt, są również możliwe dla stylów i szablonów. Dwa takie rozszerzenia, które mają możliwe scenariusze, obejmują TemplateBinding i Binding.
Zobacz także
.NET Desktop feedback