如何在网格视图的“自动”宽度中添加填充

时间:2018-04-05 14:07:08

标签: c# wpf

我的问题类似于Adding additional padding with Width="Auto",但这个问题没有答案。

我有一个使用Auto调整所有列的网格,这在我的大多数用例中效果最好。然而,有时几乎没有呼吸空间是不理想的(或者看起来很丑陋)。

是否可以将宽度设置为类似于Auto + 5

的宽度

1 个答案:

答案 0 :(得分:0)

更改HeaderTemplate并在模板元素上添加Margin:

<GridViewColumn Width="Auto" Header="TableHeadingDescription">
    <GridViewColumn.HeaderTemplate>
        <DataTemplate>
            <TextBlock Margin="5" Text="{Binding}" />
        </DataTemplate>
    </GridViewColumn.HeaderTemplate>

或使用带有Label而不带边距的简单模板,因为Label碰巧有5 Padding并且可以显示任意内容,而不仅仅是字符串:

<GridViewColumn Width="Auto" Header="TableHeadingDescription">
    <GridViewColumn.HeaderTemplate>
        <DataTemplate>
            <Label Content="{Binding}" />
        </DataTemplate>
    </GridViewColumn.HeaderTemplate>