2009-03-26 5 views
7

Il prend 5 lignes pour aligner à droite un DataGridTextColumn est en train de gonfler mon XAML.Comment mettre le code XAML à droite dans un style?

Comment puis-jemettre ce « bloc de code droit align » dans un style et l'appeler à partir d'un attribut, par exemple class = "rightAlignDataGridTextColumn".

<toolkit:DataGridTextColumn Header="Order Date" Width="Auto" 
     Binding="{Binding OrderDate, StringFormat='{}{0:dd.MM.yyyy}'}" 
     IsReadOnly="False"> 
    <toolkit:DataGridTextColumn.ElementStyle> 
     <Style TargetType="TextBlock"> 
      <Setter Property="TextAlignment" Value="Right" /> 
     </Style> 
    </toolkit:DataGridTextColumn.ElementStyle> 
</toolkit:DataGridTextColumn> 

<toolkit:DataGridTextColumn Header="Required Date" Width="Auto" 
     Binding="{Binding RequiredDate, StringFormat='{}{0:dd.MM.yyyy}'}" 
     IsReadOnly="False"> 
    <toolkit:DataGridTextColumn.ElementStyle> 
     <Style TargetType="TextBlock"> 
      <Setter Property="TextAlignment" Value="Right" /> 
     </Style> 
    </toolkit:DataGridTextColumn.ElementStyle> 
</toolkit:DataGridTextColumn> 

<toolkit:DataGridTextColumn Header="Shipped Date" Width="Auto" 
     Binding="{Binding ShippedDate, StringFormat='{}{0:dd.MM.yyyy}'}" 
     IsReadOnly="False"> 
    <toolkit:DataGridTextColumn.ElementStyle> 
     <Style TargetType="TextBlock"> 
      <Setter Property="TextAlignment" Value="Right" /> 
     </Style> 
    </toolkit:DataGridTextColumn.ElementStyle> 
</toolkit:DataGridTextColumn> 

Répondre

23

Déclarez le style dans un ResourceDictionary, comme ceci:

<Window.Resources> 
    <Style x:Key="RightAlignStyle" TargetType="{x:Type TextBlock}"> 
     <Setter Property="TextAlignment" Value="Right" /> 
    </Style> 
</Window.Resources> 

la référence ensuite ce style sur chaque élément DataGridTextColumn:

<toolkit:DataGridTextColumn ElementStyle="{StaticResource RightAlignStyle}" ... > 
+0

parfait, merci! –

Questions connexes