带你撸出一手好代码
WPF ListView控件滚动条消失问题解决

当ListView并非通过Xaml定义, 而是通过C#动态生成时


var listView = new ListView();

 

如果ListView项目数量过多以至于无法一屏显示,滚动条也不会出现

 

 未命名图片.png

 

此问题原因在于没有给ListView设置高度,实例化ListView时给予高度设置问题即能出现滚动条


listView.height = 200;

 

然而, 做WPF程序时这个高度通常并非是一个常数而是动态的, 我们需要让ListView的高度等于某个参照元素的实际高度, 此实际高度可以通过元素的ActualHeight属性获得, 将ListView的高度设置参照元素的ActualHeight属性,或者再根据界面结果进行某种规则的偏移计算, 问题即可解决。

 

上图的界面布局为例,进行如下设置滚动条即可正常显示


listView.Height = Contents.ActualHeight - form.ActualHeight - tabItem.ActualHeight;

 


未命名图片1.png

 

作者:陈大侠
日期:2018-02-15

留言(0条)

我要发表留言

您的大名 选填
电子邮箱 选填

欢迎关注微信公众号 「带你撸出一手好代码」

首页    GitHub 知乎 豆瓣 博客园