2014-07-02 94 views
0

在參考this question,我想,以填補在CheckedListBox的檢查對象(整數)的整數列表如下:灌裝與檢查的項目列表中CheckedListBox

protected System.Windows.Forms.CheckedListBox channelCheckedListBox; 
private List<int> selectedChannels; 

//some code 

selectedChannels.AddRange(channelCheckedListBox.CheckedItems.OfType<int>().ToList()); 

但是,Visual Studio中給我一個錯誤。是我還是OfType()方法折舊?它似乎不在CheckedItemCollection type中。如何使用.NET Framework 4以一種很好,簡潔的方式實現同​​樣的功能?

回答

1

OfType應該仍然可用,並且據我所見,它在.NET Framework版本4.5中未標記爲Obsolete。這是一種擴展方法,因此您需要在課程中導入System.Linq名稱空間,方法是將using System.Linq;添加到課程頂部,並確保將引用添加到您的項目中。

+0

完美,謝謝!在原來的問題中我沒有看到。感謝您的解釋,我不知道擴展方法是一件事情。我必須等待幾分鐘才能選擇最佳答案。 – audiFanatic

+0

沒問題!以下是Microsoft編寫的擴展方法:http://msdn.microsoft.com/en-us/library/bb383977.aspx供進一步閱讀。它們在公司框架中對於常見任務可能非常有用。另一方面,它們很容易過度使用,這可能會使現有的對象智能感知混亂。 – JoelC

+0

太棒了,謝謝! – audiFanatic