2010-03-29 29 views
0

如何調整ListView的高度,具體取決於該ListView中有多少項目?我試圖獲取被點擊的項目的文本,但是無論何時用戶點擊沒有項目的空間,都會出現錯誤。 確切的錯誤是:根據多少物品調整ListView的大小?

InvalidArgument ='0'的值對'index'無效。 參數名稱:索引。

我正在使用的代碼:

label14.Text = myListView1.SelectedItems[0].Text.ToString(); 

我想,刪除以下對象的空間將解決這個問題。謝謝!

回答

3

你應該做些什麼來解決你的錯誤是檢查,看看用戶是否真的點擊了一個項目:

if (myListView1.SelectedItems.Count > 0) { 
    label14.Text = myListView1.SelectedItems[0].Text.ToString(); 
} 
+0

它似乎沒有工作。它說我錯過了一個程序集引用。謝謝。 – 2010-03-29 21:47:12

+0

糟糕。 「Count」是正確的屬性 - 編譯器正在尋找具有該名稱或類似IIRC的擴展方法。 :) – 2010-03-29 22:11:50

0

每個項目的高度是根據字體是什麼,圍繞5-7個像素/使用的字體大小。所以你可以簡單地做myListView1.Height = myListView1.Items.Count * itemHeight;

要刪除空列表項,您可以遍歷並刪除它們。

0

啊哈。我有它的工作。我用:

if (myListView1.SelectedItems.Count > 0) 
     { 
      label14.Text = myListView1.SelectedItems[0].Text.ToString(); 
     } 

這似乎是伎倆。再次感謝您的幫助!