gpt4 book ai didi

c# - WPF 4.0 Datagrid 高度问题

转载 作者:行者123 更新时间:2023-11-30 18:32:08 25 4
gpt4 key购买 nike

我有 2 个数据网格有问题。一旦数据被填入其中,高度就会完全疯狂。

我得到了以下示例格式:

<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>

<!-- some control on row 0 -->

<Grid Grid.Row="1" HorizontalAlignment="Stretch" Margin="0,2,0,0">
<Grid.RowDefinitions>
<RowDefinition Height="0.66*"/>
<RowDefinition Height="0.33*" />
</Grid.RowDefinitions>

<DataGrid Name="grdSeacrhData" Grid.Row="0" />

<DataGrid Name="grdSelectData" Grid.Row="1" />
</Grid>
</Grid>

所以主要的网格行大小是因为第一行有一堆高度未知的控件,是最重要的部分。

第二行的目标是显示 2 个数据网格,第一个稍大一些以显示上面的结果,第二个数据网格较小以显示第一个数据中的一个或多个选择的精炼结果。

如果我不触摸任何东西并打开表格,它会很好地工作。但是,一旦第一个数据网格“grdSeacrhData”以 200-300 条记录的顺序在内部显示数据,高度就会超出窗口大小。

我尝试了垂直对齐和垂直内容对齐,将垂直滚动设置为可见、自动,还尝试放入堆栈面板、停靠面板、 Canvas 、滚动查看器......

我没脑子。我所知道的是,如果我设置数据网格的高度或最大高度,那么它就可以工作。如果未设置,是否有办法防止数据网格项拉伸(stretch)数据网格高度?

编辑#1:

好吧,我已经用 WPF 尝试了一些其他的东西来查看结果,但它也无法工作。这里有一些细节:

I made 1 grid with 3 rows first row height or 100 second row height of auto third row height of 100

i've put a datagrid in the middle row and it works perfectly. now as soon as i add data in it goes off screen.

without data in the datagrid i stretch the window and it's perfect the top row stay at 100 the bottom too and the middle just adjust itself.

现在这是我在 Winforms 中尝试过的内容

Put a datagrid anchored top botton left and right. top value = 100 and bottom value = form.height - 100

now strech the form it works perfectly. i added same xml data and the format stayed

所以我想做的不仅仅是一些“神奇的 unicorn 想法”,它实际上在 winforms 中很容易实现,但我不想使用 winforms 我想留在 WPF 中。那么如何复制它呢?

首先,我刚刚测试了 ASP.Net datagrid,它的行为类似于 winform 测试,因此确定它是可能的。

最佳答案

您可以使用 MaxHeight .它将设置元素可以具有的最大高度。

<DataGrid Name="grdSelectData" Grid.Row="1" MaxHeight="400" />

因此,如果您的数据较少,它就会变小​​。在您添加更多数据时,它会调整大小直到达到 MaxHeight

.

关于c# - WPF 4.0 Datagrid 高度问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19010120/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com