2010-02-22 70 views
24

我正在使用System.Windows.Forms.ListView與複選框= true 我可以看到,當列表項目超過什麼可以適合,我得到一個水平滾動條。我試過找到任何屬性來更改滾動條的方向。是否有任何方法使其在垂直方向上滾動?提前致謝製作列表視圖滾動垂直方向

回答

40

你需要設置

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

如果您已在ListView1的加入了一些列這才能正常工作,所以 添加一個虛擬列。像,

ColumnHeader header = new ColumnHeader(); 
header.Text = ""; 
header.Name = "col1"; 
listView1.Columns.Add(header); 
+8

從擬議的編輯(不是我):將HeaderStyle設置爲無以隱藏它!現在你有一個像山雀一樣的ListView le-View一個 – 2011-03-01 11:38:54

+3

你應該添加Listview1.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize)以獲得正確的外觀 – 2015-01-19 15:17:49

+0

eddy white:這是答案。謝謝 – docesam 2015-01-20 08:43:16

0

如果您的集合中有足夠的項目,ListView應該也會自動顯示一個垂直滾動條目前多於可以在ListView上顯示)。

0

嘗試設置該屬性

View=Details 

參考:

+0

我已經嘗試過所有這些組合。它沒有幫助。此外,這是配置列表項目的視圖不滾動條的方向:( – Ravisha 2010-02-22 05:48:43

0

你不能改變滾動條的方向,本身。

如果您的項目離開了列表視圖的底部,並且您有一個水平滾動條(如果您的項目離開了列表視圖的右側),那麼您會得到一個垂直滾動條。

所以如果你想控制滾動條,你實際上通過控制內容來做到這一點。就個人而言,我只使用詳細模式下的ListViews,但以此爲例,您應確保您的列標題的大小適合橫向空間。

14

我認爲只有這樣,才能迫使垂直愚蠢的ListView滾動查看項目,如 「標題」 模式,是這樣的:

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

,並添加JUST ONE

+0

謝謝。添加一列解決了我沒有看到我的項目。 – 2014-03-14 13:23:57