WPF ListView 居中显示
Posted lonelyxmas
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF ListView 居中显示相关的知识,希望对你有一定的参考价值。
原文:WPF ListView 居中显示
今天遇到的问题:
方法1:设置GridViewColumn的ActualWidth
<ListView >
<ListView.View>
<GridView >
<GridViewColumn Header="名称" Width="200" x:Name="column">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}" TextAlignment="Center" MinWidth="{Binding Path=ActualWidth,ElementName=column}"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Header="接收" Width="120" x:Name="sss">
<GridViewColumn.CellTemplate>
<DataTemplate>
<Border MinWidth="{Binding Path=ActualWidth,ElementName=sss}">
<CheckBox IsChecked="{Binding IsReceive}" HorizontalAlignment="Center"/>
</Border>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
注意修改CheckBox居中的时候,需要把他套在Border里,直接写在CheckBox上话没效果。
<Style x:Key="ListViewItemStyle" TargetType="{x:Type ListViewItem}">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
</Style>
再修改需要居中的控件HorizontalAlignment=“Center”
<ListView ItemContainerStyle="{DynamicResource ListViewItemStyle}">
<ListView.View>
<GridView >
<GridViewColumn Header="名称" Width="200">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Header="接收" Width="120">
<GridViewColumn.CellTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding IsReceive}" HorizontalAlignment="Center"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Header="拒绝" Width="120" >
<GridViewColumn.CellTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding IsRefuse}" HorizontalAlignment="Center"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
以上是关于WPF ListView 居中显示的主要内容,如果未能解决你的问题,请参考以下文章
用WPF实现在ListView中的鼠标悬停Tooltip显示