【问题标题】:Fix for WPF DataGrid column headers cut off?修复 WPF DataGrid 列标题被切断的问题?
【发布时间】:2011-10-18 00:35:21
【问题描述】:

在我的 WPF 应用程序中,我使用 DataGrid,当我的列的标题标签文本接近列的宽度时,列标题文本的右侧部分会被右侧的空白区域截断页眉区域,这就像在页眉右侧的内部填充,宽度为 6 或 8 像素,这似乎没有充分的理由。

我搜索了类似的问题,看到有人提到无法更改的 0,6、0,6 填充值,但我不知道他们是否在谈论我所看到的同一件事。

无论如何,我希望知道解决方法的人告诉我它是什么。

谢谢!

【问题讨论】:

    标签: wpf formatting format truncation


    【解决方案1】:

    在 .NET 4 中,DataGridColumnHeader 将标头内容包装在 DataGridHeaderBorder 的实例中。 DataGridHeaderBorder 确实似乎在内容周围添加了 "3,3,3,3" 的填充,如果它的 Padding 属性当前设置为 "0,0,0,0"

    还有基于DataGridHeaderBorder 是用于列标题还是行标题的附加逻辑。此外,各种主题具有相似但不完全相同的逻辑。

    防止DataGridHeaderBorder 添加其填充的唯一方法是指定您自己的填充。所以你可以使用:

    <Style TargetType="DataGridColumnHeader">
        <Setter Property="Padding" Value="1,0" />
    </Style>
    

    或除全零以外的任何内容,例如 "0.0001""-1"DataGridColumnHeader 会将其填充传递给DataGridColumnHeader,这就是您可以使用上述隐式样式的原因。

    【讨论】:

    • 太棒了!耶!非常感谢!那工作得很好。奇怪的是他们如何将其作为默认值,而且奇怪的是 3,3,3,3 的填充似乎导致填充 0,6,0,0,但只要有解决方案!再次感谢!
    猜你喜欢
    • 2013-10-01
    • 1970-01-01
    • 2013-05-12
    • 1970-01-01
    • 1970-01-01
    • 2011-01-28
    • 2011-09-20
    • 2018-10-26
    • 1970-01-01
    相关资源
    最近更新 更多