36

我正在使用System.Windows.Forms.ListViewwith checkboxes = true。我可以看到,当列表项超出容量时,我会得到一个水平滚动条。我试图找到任何属性来更改滚动条方向。有没有办法让它在垂直方向上滚动?

4

6 回答 6

59

你需要设置

Listview1.Scrollable = true;
Listview1.View = View.Details

如果您在 Listview1 中添加了一些列,这只会正常工作,因此添加一个虚拟列。喜欢,

ColumnHeader header = new ColumnHeader();
header.Text = "";
header.Name = "col1";
listView1.Columns.Add(header);
于 2010-02-22T06:30:47.830 回答
19

我认为强制 ListView 垂直滚动并将项目视为“标题”模式的唯一方法是:

ListView.View = View.Details;
ListView.HeaderStyle = ColumnHeaderStyle.None;

并添加只是一

于 2011-03-01T11:17:45.693 回答
0

如果集合中有足够的项目,ListView 还应该自动显示一个垂直滚动条(即,当前 ListView 上不能显示的项目更多)。

于 2010-02-22T05:45:37.407 回答
0

尝试设置此属性

 View=Details

参考:

于 2010-02-22T05:46:10.237 回答
0

你不能改变滚动条的方向,就其本身而言。

如果您的项目超出列表视图的底部,您将获得一个垂直滚动条,如果您的项目位于列表视图的右侧,您将获得一个水平滚动条。

所以如果你想控制滚动条,你实际上是通过控制内容来做到这一点的。就我个人而言,我只在 Detail 模式下使用 ListViews,但以此为例,您将确保列标题的大小适合它们都适合水平空间。

于 2010-02-22T06:00:09.230 回答
-1

你需要

listView1.View = System.Windows.Forms.View.SmallIcon;

然后您的控件将具有垂直滚动条和行为几乎与 View.List 相同

于 2018-11-15T06:59:25.670 回答