2013-08-25 43 views
0

我一直在試圖找出幾個小時,我可以如何使用菜單來選擇圖片,例如,如果列表中有胡蘿蔔;當你點擊它時,旁邊會出現一張胡蘿蔔的圖片。我對視覺基礎不太熟悉(我剛剛開始),所以我需要你們的幫助。我有一些代碼已經,但我不認爲它的工作原理如何使用列表視圖改變圖片

Dim imgList As New ImageList 
    ListView1.View = View.Details 
    ListView1.Width = 500 
    ListView1.Columns.Add("Name", 100, HorizontalAlignment.Left) 
    ListView1.AllowColumnReorder = True 
    ListView1.Columns(0).DisplayIndex = 1 
    ImageList1.Images.Add("Name", Image.FromFile("C:\pic\test.jpeg")) 
    ListView1.SmallImageList = ImageList1 

回答

0

您應該設置ListViewItem.ImageIndex到圖像的指數在ImageList,添加新的ListViewItem它單曲的時候就這麼簡單:

ImageList1.Images.Add("Key", Image.FromFile("C:\pic\test.jpeg")) 
Dim newItem = New ListViewItem("Item Name", ImageList1.Images.IndexOfKey("Key")) 
ListView1.Items.Add(newItm) 

當與已添加的項處理就可以直接設置,通過refrence,指數或者你有什麼:

'set ListViewItem.ImageIndex for ListViewItem at index 0 
'using ListViewItem.Tag can be usefull for this 
ListView1.Items(0).Tag = New String("Key") 
ListView1.Items(0).ImageIndex = ImageList1.Images.IndexOfKey(ListView1.Items(0).Tag.ToString) 
+0

好,我還挺得到它的工作,但是當我點擊測試名稱,它的溫泉MS與測試名稱框我提供了一個屏幕截圖下面http://prntscr.com/1ne67e @raphael smit,這裏是我現在有的代碼http://pastebin.com/f19usyv7 – user2715140

+0

也因爲即時通訊新的在這個你是什麼由New String(「Key」)表示。 – user2715140

+0

我給了你兩個設置圖像的選項,可以直接使用(第二種方法)或者當你第一次添加該項目時(第一種方法),將它們結合起來並不是一個好主意,我還假定你已經添加了它到事件?這是其最可能複製的原因之一。對於New String(「Key」),您可能想要使用第二種方法,它將item標記設置爲具有某個鍵的新字符串,您可以使用該鍵來標識/查找匹配的imagelist索引。 –