2014-01-29 35 views
0
ColumnHeader header = new ColumnHeader(); 
header.Text = ""; 
header.Name = "col1"; 

listView1.Columns.Add(header); 
listView1.View = View.Details; 
listView1.Scrollable = true; 

readableRss = RssReader.covertRss("http://rotter.net/rss/rotternews.xml"); 

lines = Regex.Split(readableRss, "\r\n") 
        .Where(str => !string.IsNullOrEmpty(str)) 
        .ToList(); 

for (int i = 0; i < lines.Count; i++) 
{ 
    listView1.Items.Add(lines[i]); 
} 

這是即時得到什麼:如何使ListView中的列動態擴展?

enter image description here

我需要使用鼠標列/ s的移動到右邊,所以我會看到所有的行/秒。我怎樣才能使它自動化,因此每一行的列將向右/向右擴展/打開,以便顯示整行?

添加此行:header.Width = 1000;解決這個問題。但是,我怎麼知道要設置它多少? 1000在這種情況下很好,但爲什麼不是999或1500?我只是猜測,寬度應爲1000

+0

好的發現它:添加下面這行:header.Width = 1000;解決這個問題。但是,我怎麼知道要設置它多少? 1000在這種情況下很好,但爲什麼不是999或1500?我只是猜測寬度應該是1000。 – user3200169

回答

2

加入該行,使基於內容的列調整大小:

header.AutoResize(ColumnHeaderAutoResizeStyle.ColumnContent); 

您需要添加它添加完所有項目後, 。

2

您需要使用ColumnHeaderAutoResize方法,這將,

調整列的寬度由resize style指示。

所以,這樣的事情,

header.AutoResize(ColumnHeaderAutoResizeStyle.ColumnContent);