2011-08-03 104 views
5

我一直在我的项目中使用Winform ListView。当列表视图(排列在列表中的项目)超出窗口空间时,它将在右侧开始一个新列表并创建一个水平滚动条,我需要它继续下面的列表并将滚动条垂直放置。我曾经用类似的Stack Overflow问题的建议来做这件事,但它创建了我不想要的列,除非有办法隐藏它?谢谢。C#ListView Vertical Scroll

回答

4

我会从阅读本文开始。

http://msdn.microsoft.com/en-us/library/system.windows.forms.listview.view.aspx

列表视图中的行为依赖于View属性的设置,而不同的方式。微软已经很好地解释了它。

+5

如果它与其他人有关我发现这个代码工作 - listView1.View = View.Details; listView1.HeaderStyle = ColumnHeaderStyle.None; ColumnHeader h = new ColumnHeader(); h.Width = listView1.ClientSize.Width - SystemInformation.VerticalScrollBarWidth; listView1.Columns.Add(h);这将在ListView中创建一个隐藏列,其排列方式为List not details,并将创建一个垂直滚动条 –

+0

继@ @ BaliC的评论之后,您可以将'ColumnHeader'的'Width'属性设置为'-1'让它自动调整大小(一次)到列的内容。尽管每次修改项目时都需要将其设置为此值,以便标题相应地调整其宽度。 – Spooky

6

,因为它看起来非常像名单,而不是项目实施垂直取向的SmallIcon观点可能更适合你。

+0

伟大的工作..感谢分享 – electricalbah