样式化WPF工具包DataGrid列标题

时间:2010-05-18 11:06:39

标签: wpf xaml datagrid wpftoolkit styling

我遇到了WPF Datagrid样式的问题,我设计了列标题(类型为ColumnHeader)。

但是当列中的数据没有填满网格的整个宽度时,会添加一个额外的列来填充网格。这个列忽略了ColumnHeader样式并且看起来不合适,因为该元素具有不同的类型,我在对象浏览器中查看了库,但是我找不到这个元素。我也考虑过修改尺寸,所以这个专栏是不必要的,但这不是一个可行的选择。

以下文章说明了这个问题:http://blogs.msdn.com/jaimer/archive/2009/01/20/styling-microsoft-s-wpf-datagrid.aspx 我所说的元素位于右上方,就在绿色列3的右侧,正好在具有行背景箭头的单元格的上方。

2 个答案:

答案 0 :(得分:0)

将最后一列的Width设置为*,以使列填充剩余的可用空间。您的样式仍然适用,并且您不会留下该填充列

    <toolkit:DataGrid>
        <toolkit:DataGrid.Resources>
            <Style TargetType="{x:Type toolkit:DataGridColumnHeader}"  >
                <Setter Property="Foreground" Value="Red" />
            </Style>
        </toolkit:DataGrid.Resources>

        <toolkit:DataGrid.Columns>
            <toolkit:DataGridTextColumn Header="1" />
            <toolkit:DataGridTextColumn Header="2" Width="*" />
        </toolkit:DataGrid.Columns>
    </toolkit:DataGrid>

Sample http://i44.tinypic.com/2ypel4w.png

答案 1 :(得分:0)

这似乎已在最新版本的网格中修复