Datagrid高度问题

jeeky 2013-02-05 02:10:59
有一个Grid,Height为Auto,VerticalAlignment为Strech。
里面有一个Datagrid,相同的设置。
如果Datagrid里面的数据很多,那么它的高度就会无限增长,而不出现滚动条。
现在想根据浏览器的大小,限制Grid的高度,也限制Datagrid的高度,使其出现滚动条,从而适应屏幕高度。
怎么设置?
...全文
142 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
jeeky 2013-02-06
  • 打赏
  • 举报
回复
我找到原因了,是在页面多加了一个ScrollViewer。
jv9 2013-02-06
  • 打赏
  • 举报
回复
7楼代码正解.使用Auto自适应layout,设置控件AutoGenerateColumns属性为True。
Bonjour-你好 2013-02-05
  • 打赏
  • 举报
回复
引用 3 楼 jeeky 的回复:
msdn这样说的:为了在使用大型数据集时避免这些问题,建议您特别设置 DataGrid 的 Height 或将其放置在限制 Height 的容器(如 Grid)中。 限制 Height 时,DataGrid 将只创建在指定的 Height 中容纳的行数,并根据显示新数据的需要回收这些行。 怎么设置Grid呢?
就是在Grid层设置Height。。。。
jeeky 2013-02-05
  • 打赏
  • 举报
回复
msdn这样说的:为了在使用大型数据集时避免这些问题,建议您特别设置 DataGrid 的 Height 或将其放置在限制 Height 的容器(如 Grid)中。 限制 Height 时,DataGrid 将只创建在指定的 Height 中容纳的行数,并根据显示新数据的需要回收这些行。 怎么设置Grid呢?
jeeky 2013-02-05
  • 打赏
  • 举报
回复
当改变窗口大小的时候,还需要Datagrid的高度也随之变化,用maxHeight就固定死了,没有办法达到要求。
Bonjour-你好 2013-02-05
  • 打赏
  • 举报
回复
设置一个MaxHeight试试看,不要用Height="Auto"
Bonjour-你好 2013-02-05
  • 打赏
  • 举报
回复
照着你的要求,直接出现了滚动条。。。。

<Grid x:Name="LayoutRoot" Background="White" Height="Auto" VerticalAlignment="Stretch">
<sdk:DataGrid x:Name="myGrid" AutoGenerateColumns="True" Height="Auto" VerticalAlignment="Stretch"/>
</Grid>


Bonjour-你好 2013-02-05
  • 打赏
  • 举报
回复
引用 5 楼 jeeky 的回复:
那就不会随着浏览器大小的改变而改变datagrid的高度了。
如果你整个界面只有一个Grid,就会出现你的情况,实际中很少。。。。 倒不如你发你的代码出来看看
jeeky 2013-02-05
  • 打赏
  • 举报
回复
那就不会随着浏览器大小的改变而改变datagrid的高度了。

8,735

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧