2010-08-30 72 views
0

我已經加載了一個圖像集合到一個文件夾(圖標),我想知道如何在程序啓動時將所有這些加載到列表視圖中。我試圖讓它們加載到視圖中,並在圖像下方顯示帶有標題或說明的圖片。C#WinForms - Listview加載圖像

在此之後,我計劃(以某種方式)選擇一個,然後單擊一個圖片框在鼠標光標的框中添加圖標。

我在C#中做這些類型的東西比較新。

回答

1

我認爲你需要ListView.LargeImageListListView.SmallImageList屬性。
請注意,它們的默認值爲空,這意味着您必須爲其分配新的ImageList對象。在此之後,您可以將圖像加載到ImageList。

然後,您可以使用ListViewItem.ImageIndex屬性設置要顯示的圖像的索引。
至於從文件加載圖像,您可以使用Image.FromFile方法。

我不太清楚,我完全理解你想從這一點上實現的目標,但我認爲ListView.ItemSelectionChanged事件可以給你你想要的。

0

ListView不支持嵌入的PictureBox或其他控件,但您可以使用ImageList,因爲ShdNx指出。

一定要在單獨的線程上加載並正確同步(即在更新ImageList時調用BeginInvoke)。這將確保您的用戶界面在加載過程中不會掛起。

還有第三方組件Better Thumbnail Browser正是這種(它支持自動裝載從一個文件夾,數據庫或其他源,縮放,複選框,多遍裝載,圖像緩存和許多其他物品):

enter image description here