【问题标题】:Content alignment for Gridviewcolumn in the listview列表视图中 Gridviewcolumn 的内容对齐方式
【发布时间】:2011-06-20 11:17:16
【问题描述】:

请看下图

以下是此代码::

<Grid>
                <ListView Style="{StaticResource listViewStyle}" Name="transactionListView" HorizontalAlignment="Stretch" VerticalAlignment="Top" ItemsSource="{Binding}" MouseDoubleClick="transactionListView_MouseDoubleClick" IsSynchronizedWithCurrentItem="True" >
                    <ListView.View>
                        <GridView ColumnHeaderContainerStyle="{StaticResource gridViewHeaderColumnStyle}">
                            <GridView.Columns>
                                <GridViewColumn Width="70" Header="Serial" DisplayMemberBinding="{Binding Path=Serial}" />
                                <GridViewColumn Width="100" Header="Date" DisplayMemberBinding="{Binding Path=Date, StringFormat={}{0:dd-MM-yyyy}}" />
                                <GridViewColumn Width="200" Header="Seller" DisplayMemberBinding="{Binding Path=Seller}" />
                                <GridViewColumn Width="200" Header="Buyer" DisplayMemberBinding="{Binding Path=Buyer}" />
                                <GridViewColumn Width="70" Header="Bales" DisplayMemberBinding="{Binding Path=Bales}" />
                            </GridView.Columns>
                        </GridView>
                    </ListView.View>
                </ListView>
            </Grid>

【问题讨论】:

    标签: wpf xaml gridviewcolumn


    【解决方案1】:

    您想将所有单元格的内容居中吗?在这种情况下,您可以为ListViewItem 添加HorizontalContentAlignment

    <ListView ...>
        <ListView.ItemContainerStyle>
            <Style TargetType="ListViewItem">
                <Setter Property="HorizontalContentAlignment" Value="Center" />
            </Style>
        </ListView.ItemContainerStyle>
        <!--...-->
    </ListView>
    

    【讨论】:

    • 只有一栏怎么办?例如“日期”?
    • 我不确定为什么我不能在 Snoop 中复制此修复程序(似乎有一个 ContentPresenter 嵌套在 ListViewItem 中,其 HorizontalAlignment 需要为 Stretch,但是在 Snoop 中更改它时没有根据ListViewItem.HorizontalContentAlignment 属性进行更新 - 一次绑定在那里?),但在运行时,这是有效的。
    • 如何只居中几个?
    • 这不是答案,只要此代码将对齐所有列的内容,而不是单个列。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-22
    • 2014-02-05
    • 1970-01-01
    • 2014-12-14
    • 2013-08-23
    • 1970-01-01
    • 2014-03-14
    相关资源
    最近更新 更多