2010-07-05 68 views
2

我想'定義每個特定類型的控件在網格中都會獲得樣式。只需將TargetType的樣式放入網格資源中即可。但是,如果我不想重複使用這個網格作爲風格呢?將樣式放在網格樣式中的控件

我可以創建一個網格樣式併爲資源設置一個setter,但只能在其中放置一個樣式。

<Style x:Key="GridStyle" TargetType="Grid"> 
    <Setter Property="Resources"> 
     <Setter.Value> 
      <Style TargetType="TextBlock" BasedOn="{StaticResource MainText}" /> 
      <Style TargetType="{x:Type RowDefinition}"> 
       <Setter Property="Height" Value="Auto"/> 
      </Style> 
      <Style TargetType="Button" BasedOn="{StaticResource MainButton}" /> 
     </Setter.Value> 
    </Setter> 
</Style> 

不會起作用,因爲二傳手只能把一個風格英寸

這可能是很簡單的東西,但我沒有得到它,我不wan't重複這些樣式在每一個網格中。

回答

7

如果你把外風格的資源裏面的樣式,他們將在範圍內的網格:

<Style x:Key="GridStyle" TargetType="Grid"> 
    <Style.Resources> 
     <Style TargetType="TextBlock" BasedOn="{StaticResource MainText}" /> 
     <Style TargetType="{x:Type RowDefinition}"> 
      <Setter Property="Height" Value="Auto"/> 
     </Style> 
     <Style TargetType="Button" BasedOn="{StaticResource MainButton}" /> 
    </Style.Resources> 
</Style> 
+0

必須是簡單的東西這樣。謝謝。 – 2010-07-05 13:50:17