2010-09-06 72 views
7

我想知道是否有人有一個簡單的方法來獲取中心對齊的WPF數據網格中的文本。我得到的數據網格工作得很好,但正確的文本對齊困擾着我。我瞪着一些,然後下載了wpftoolkit,但這些例子都不起作用,或者給我一個編譯錯誤。我沒有將對wpftoolkit的引用添加到我的項目中。任何幫助,將不勝感激。謝謝Datagrid文本對齊

在數據網格的XAML是如下

<WpfToolkit:DataGrid AutoGenerateColumns="True" Margin="15,15,10,65" Name="DG1" CanUserReorderColumns="False" /> 

回答

17

如果設置Block.TextAlignment屬性爲中心的DataGrid中,它會通過在DataGridTextColumns使用的TextBlocks和文本框繼承並居中文本:

<WpfToolkit:DataGrid 
    Block.TextAlignment="Center" 
    AutoGenerateColumns="True" 
    Margin="15,15,10,65" 
    Name="DG1" 
    CanUserReorderColumns="False" /> 

如果要對齊的細胞,但不是在標題或其他地方的電網文本,您可以使用CellStyle設置在DataGridCell屬性:

<WpfToolkit:DataGrid 
    AutoGenerateColumns="True" 
    Margin="15,15,10,65" 
    Name="DG1" 
    CanUserReorderColumns="False"> 
    <WpfToolkit:DataGrid.CellStyle> 
     <Style TargetType="WpfToolkit:DataGridCell"> 
      <Setter Property="Block.TextAlignment" Value="Center"/> 
     </Style> 
    </WpfToolkit:DataGrid.CellStyle> 
+0

太棒了!終於奏效了!非常感謝你。 – 2010-09-06 15:22:53

+0

這幫助我謝謝!我正在使用Control.Horizo​​ntalAlignment x_x – 2011-04-19 20:14:33

+4

如果您希望獲得更精細的紋理,還可以在單​​個列上設置ElementStyle屬性。在這種情況下,您可能想要使用BasedOn =「{x:Static DataGridTextColumn.DefaultElementStyle}」。 – Cheetah 2011-12-13 23:34:02