【问题标题】:silverlight 4 datagrid center column headersilverlight 4 数据网格中心列标题
【发布时间】:2012-10-18 20:10:10
【问题描述】:

我无法在 silverlight 4 中将列标题居中。

这是我的静态资源:

<my:CAddTransaction.Resources>
        <Style x:Name="CenterHeaderText" TargetType="sdk:DataGridColumnHeader">
            <Setter Property="HorizontalContentAlignment" Value="Center"/>
        </Style>
 </my:CAddTransaction.Resources>

这是专栏:

 <sdk:DataGridTemplateColumn Header="Include?" HeaderStyle="{StaticResource CenterHeaderText}" >
        <sdk:DataGridTemplateColumn.CellTemplate>
             <DataTemplate>
                   <CheckBox Name="bInclude" IsChecked="{Binding bInclude, Mode=TwoWay}" HorizontalAlignment="Center" VerticalAlignment="Center" />
             </DataTemplate>
        </sdk:DataGridTemplateColumn.CellTemplate>
 </sdk:DataGridTemplateColumn>

结果是列标题左对齐。

【问题讨论】:

  • 我认为它是居中的,只是由于右侧的一些填充而偏移了一点。不知道你是如何解决这个问题的......
  • 检查它是否仍然显示“排序图标”:)
  • @dbaseman.. 我认为你是对的。标题的右侧似乎确实发生了一些事情。我在标题文本的前面放了几个空格,在文本一直到单元格右侧之前,文本开始消失。如果有人知道如何摆脱它,我将不胜感激。

标签: datagrid silverlight-4.0


【解决方案1】:

这对我有用:

<controls:DataGridTextColumn Binding="{Binding Path=Login}" Header="My Column Title" Width="100">
    <controls:DataGridTextColumn.HeaderStyle>
         <Style TargetType="dataprimitives:DataGridColumnHeader">
             <Setter Property="HorizontalAlignment" Value="Center"/>
         </Style>
    </controls:DataGridTextColumn.HeaderStyle>
</controls:DataGridTextColumn>   

【讨论】:

    【解决方案2】:

    如果您仍然需要帮助,这对我来说很好。同样当用户更改列宽时。

    <DataGridCheckBoxColumn> 
        <DataGridCheckBoxColumn.HeaderStyle> 
            <Style TargetType="DataGridColumnHeader"> 
                <Setter Property="HorizontalContentAlignment" Value="Center"/> 
            </Style> 
        </DataGridCheckBoxColumn.HeaderStyle> 
    </DataGridCheckBoxColumn>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-08-02
      • 1970-01-01
      • 2011-10-29
      • 1970-01-01
      • 2011-02-20
      • 1970-01-01
      • 2011-09-05
      相关资源
      最近更新 更多