WPF数据表格问题

5
我有一个WPF数据网格,它运行得很好,但我注意到在第一列之前有一种非常小的列... 我想要去掉它... 我该怎么做?
请看图片:http://i45.tinypic.com/2d177f9.jpg ... 我想要删除的是我用红色矩形框起来的部分。

看我的回答,一旦你知道它是什么,就很容易了 :) - David Brunelle
5个回答

6

这是行标题。当您单击它时,它会选择整行。默认情况下,它看起来像一个奇怪的工件,就像您提到的那样。

只需设置属性 RowHeaderWidth="0",它就会消失,或者将其设置得更大以更清晰地看到它。


真的很难找到与此问题相关的任何结果,尤其是因为我在互联网上目前找到的唯一链接标题为“WPF datagrid question”,它是没关系的哈哈,但我很高兴我找到了你的答案,因为这个问题困扰了我很长时间,很高兴甚至有了解决方案lol,谢谢David。 我真的很感激你。 - RAMM-HDR

2

正如David Brunelle所说,它是行表头。但是,我认为更干净的解决方案是将其宽度设置为零,而是设置HeadersVisibility="Column"


不知道那个。我会去查一下的。 - David Brunelle

1
     <my:DataGrid HorizontalAlignment="Left" Margin="0,0,0,0" Padding="0,0,0,0" Name="softwareTable" Width="542" AutoGenerateColumns="false" CanUserAddRows="False" CanUserDeleteRows="False" IsReadOnly="True" CanUserResizeRows="False">
                <my:DataGrid.Columns>
                    <my:DataGridTextColumn Header="Name" Binding="{Binding Path=Name}" Width="182" CanUserResize="False" CanUserSort="False" CanUserReorder="False"></my:DataGridTextColumn>
                    <my:DataGridTextColumn Header="Description" Binding="{Binding Path=Description}" Width="350" CanUserResize="False" CanUserSort="False" CanUserReorder="False"></my:DataGridTextColumn>
                </my:DataGrid.Columns>
            </my:DataGrid>

0
你是在运行时还是设计时看到这个问题的?我将这个XAML放入VS2008中,没有任何问题的迹象。

它只会在运行时发生。我不喜欢WPF中的datagrid之一是,有些格式化只有当数据在网格中时才会发生。因此,如果您的网格为空,则看不到它。 - David Brunelle

-1

我认为您的第一列存在问题。 您的网格宽度为542,而您将第一列设置为182,第二列设置为350。 只需要简单的数学计算:350+182=532

您可以看到是532而不是542。

有两个解决方案: 1:将第一列宽度增加10

或者

2:从网格宽度中减少10 希望这有所帮助。


1
这将在右侧创建一个间隙,而不是左侧。思路很好,但实际上只是行标题。 - David Brunelle
答案已经完整! 好的提示,我之前不知道。 - Rev

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接