2012-06-10 36 views
0

我已經爲DataGrid創建了一個自定義樣式。在我的應用程序中有幾個數據網格,我希望這種樣式適用於所有的數據網格。有沒有什麼辦法可以使Style適用於所有項目而不必聲明屬性

這樣做的一種方法是將Style="{StaticResource DataGridDefaultStyle}"添加到所有DataGrid。

但是,必須有其他方式來做到這一點,類似於添加一個主題,我將聲明樣式,它會自動應用於所有DataGrid。

我該怎麼做?

回答

2

可以使用隱式樣式其他所指出的,但是把它放在你的App.xaml文件的Application.Resources部分,這將允許將樣式應用於應用程序中的所有DataGrid。

<Application.Resources> 
    <Style TargetType="DataGrid"> 
     <Setter Property="Background" Value="LightBlue" /> 
    </Style> 
</Application.Resources> 
1

要創建隱式樣式,您不得包含該樣式的鍵並指定TargetType。如果這樣做,該樣式將自動應用於指定類型的每種樣式。

例如,該代碼將自動適用於所有的DataGrid元素:

<Style TargetType="DataGrid"> 
    <!-- style information goes here --> 
</Style> 
相關問題