【发布时间】:2011-02-02 16:03:05
【问题描述】:
您好,我在 wpf 中使用 ListView 并且有几列具有自动宽度,现在我想要在它们上进行一些填充,但我有点不确定如何做到这一点?我的标题上有一个红色背景,然后是文本,但我想在框的边框和文本之间留一些空间......
【问题讨论】:
您好,我在 wpf 中使用 ListView 并且有几列具有自动宽度,现在我想要在它们上进行一些填充,但我有点不确定如何做到这一点?我的标题上有一个红色背景,然后是文本,但我想在框的边框和文本之间留一些空间......
【问题讨论】:
你可以修改GridViewColumn的HeaderTemplate
<GridViewColumn ...>
<GridViewColumn.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" Margin="5,0,5,0"/>
</DataTemplate>
</GridViewColumn.HeaderTemplate>
<GridViewColumnHeader Content="Some Header" Background="Red" />
</GridViewColumn>
【讨论】:
GridViewColumnHeader元素中重复使用这个模板吗?
对于遇到此问题的其他人,这里有一个更简洁的选项。未在样式上指定键会使这适用于所有列。这也使用了填充,就像 OP 想要的那样。
<ListView.Resources>
<Style TargetType="GridViewColumnHeader">
<Setter Property="Padding" Value="10,0" />
</Style>
</ListView.Resources>
【讨论】: