如何在wpf ListView的第一列之前删除间隙?

时间:2017-07-07 02:47:17

标签: wpf

我注意到控件的第一个列标题和左边缘之间存在间隙。我该如何删除它?

2 个答案:

答案 0 :(得分:1)

您可以减少Padding的{​​{1}}和ListView的{​​{1}}:

Margin
GridViewHeaderRowPresenter

答案 1 :(得分:0)

这些代码可以工作,将其添加到Window或App.xaml的资源标签中:

        <!--This Sytle For Deletion of the Margin in Header-->
        <Style x:Key="{x:Static GridView.GridViewScrollViewerStyleKey}"
   TargetType="ScrollViewer">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="ScrollViewer">
                        <Grid Background="{TemplateBinding Background}">
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="*" />
                                <ColumnDefinition Width="Auto" />
                            </Grid.ColumnDefinitions>
                            <Grid.RowDefinitions>
                                <RowDefinition Height="*" />
                                <RowDefinition Height="Auto" />
                            </Grid.RowDefinitions>

                            <DockPanel Margin="{TemplateBinding Padding}">
                                <ScrollViewer DockPanel.Dock="Top"
                      HorizontalScrollBarVisibility="Hidden"
                      VerticalScrollBarVisibility="Hidden"
                      Focusable="false">
                                    <GridViewHeaderRowPresenter Margin="0"
                                      Columns="{Binding Path=TemplatedParent.View.Columns,
            RelativeSource={RelativeSource TemplatedParent}}"
                                      ColumnHeaderContainerStyle="{Binding
            Path=TemplatedParent.View.ColumnHeaderContainerStyle,
            RelativeSource={RelativeSource TemplatedParent}}"
                                      ColumnHeaderTemplate="{Binding
            Path=TemplatedParent.View.ColumnHeaderTemplate,
            RelativeSource={RelativeSource TemplatedParent}}"
                                      ColumnHeaderTemplateSelector="{Binding 
            Path=TemplatedParent.View.ColumnHeaderTemplateSelector,
            RelativeSource={RelativeSource TemplatedParent}}"
                                      AllowsColumnReorder="{Binding
            Path=TemplatedParent.View.AllowsColumnReorder,
            RelativeSource={RelativeSource TemplatedParent}}"
                                      ColumnHeaderContextMenu="{Binding
            Path=TemplatedParent.View.ColumnHeaderContextMenu,
            RelativeSource={RelativeSource TemplatedParent}}"
                                      ColumnHeaderToolTip="{Binding
            Path=TemplatedParent.View.ColumnHeaderToolTip,
            RelativeSource={RelativeSource TemplatedParent}}"
                                      SnapsToDevicePixels="{TemplateBinding
            SnapsToDevicePixels}" />
                                </ScrollViewer>

                                <ScrollContentPresenter Name="PART_ScrollContentPresenter"
                                KeyboardNavigation.DirectionalNavigation="Local"
                                CanContentScroll="True"
                                CanHorizontallyScroll="False"
                                CanVerticallyScroll="False" />
                            </DockPanel>

                            <ScrollBar Name="PART_HorizontalScrollBar"
                 Orientation="Horizontal"
                 Grid.Row="1"
                 Maximum="{TemplateBinding ScrollableWidth}"
                 ViewportSize="{TemplateBinding ViewportWidth}"
                 Value="{TemplateBinding HorizontalOffset}"
                 Visibility="{TemplateBinding ComputedHorizontalScrollBarVisibility}" />

                            <ScrollBar Name="PART_VerticalScrollBar"
                 Grid.Column="1"
                 Maximum="{TemplateBinding ScrollableHeight}"
                 ViewportSize="{TemplateBinding ViewportHeight}"
                 Value="{TemplateBinding VerticalOffset}"
                 Visibility="{TemplateBinding ComputedVerticalScrollBarVisibility}" />

                        </Grid>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>