如何删除DataGrid中额外未使用空间中的行

时间:2015-12-02 02:28:46

标签: c# wpf datagrid

enter image description here

我创建了一个如上图所示的DataGrid,它在右侧部分有额外的未使用空间。 你能告诉我如何删除未使用空间中的行吗?

注意:在我的情况下,右侧部分必须存在额外的未使用空间。我想单独删除行。

SOLUTION:

我通过设置GridLinesVisibility="NONE"并为DataGridCell设置模板来解决我的问题,如下面的代码所示。非常感谢大家的帮助。

<Style TargetType="DataGridCell">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate>
                <Border BorderBrush="Black" BorderThickness="0, 0, 0.5, 0.5"
                        Background="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Background}">
                        <ContentControl Content="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Content}"/>
                </Border>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

2 个答案:

答案 0 :(得分:1)

在数据网格上设置GridLinesVisibility="Vertical",然后覆盖cellstyle:

<DataGrid.CellStyle>
    <Style TargetType="DataGridCell">
        <Setter Property="BorderBrush" Value="Black"/>
        <Setter Property="BorderThickness" Value="0,0,0,1"/>
    </Style>
</DataGrid.CellStyle>

将每个单元格的边框设置为仅底部边框,每列仅显示垂直网格线。

答案 1 :(得分:0)

您可以使用CanUserAddRows属性删除额外的行。您还可以使用AutoGenerateColumns属性删除额外创建的列。

<DataGrid CanUserAddRows="False" AutoGenerateColumns="False">
.................
</DataGrid>