共用方式為


內嵌樣式和範本

Windows Presentation Foundation (WPF) 提供 Style 物件和範本物件 (FrameworkTemplate子類別) 作為定義資源中元素視覺外觀的方式,以便多次使用。 因此,XAML 中採用類型 StyleFrameworkTemplate 的屬性幾乎一律對現有樣式和範本進行資源參考,而不是定義新的內嵌樣式和範本。

內嵌樣式和範本的限制

在 Extensible Application Markup Language (XAML) 中,樣式和範本屬性在技術上可以透過兩種方式 (採其一即可) 來設定。 您可以使用屬性語法來參考資源內定義的樣式,例如 <物件Style="{StaticResourcemyResourceKey}" .../>。 或者,您可以使用屬性元素語法來定義內嵌樣式,例如:

< object >

< object .Style>

< Style .../>

</ object .Style>

</ object >

屬性使用方式較為常見。 內嵌定義且未在資源中定義的樣式,一定僅限於包含的元素,且因為其沒有資源索引鍵,因此無法輕易重複使用。 一般而言,資源定義的樣式較多樣化,也較為實用,而且更符合 Windows Presentation Foundation (WPF) 程式設計模型的一般原則,即將程式碼中的程式邏輯與標記中的設計分開。

通常沒有理由設定樣式或範本內嵌,即使您只打算在該位置使用該樣式或範本。 大部分可以採用樣式或範本的元素也都支援內容屬性和內容模型。 如果您只使用透過樣式設定或範本化建立的任何邏輯樹狀結構,則只要在直接標記中以對等子元素填入該內容屬性會比較容易。 這會完全略過樣式和範本機制。

傳回物件之標記延伸所啟用的其他語法,也可以用於樣式和範本。 有可能案例的兩個這類延伸功能包括 TemplateBindingBinding

另請參閱