簡體   English   中英

C#如何遍歷列表框中的圖像

[英]C# How do I loop through Images in a Listbox

我創建了一個圖像列表框,我想調整所有圖像的大小。 我已經確定了方法,但似乎無法遍歷列表框中的項目:

foreach (Image I in listbox1.items)
{
     Resize(I, x, y)
}

我收到此錯誤“無法將類型為system.string的對象轉換為類型為system.drawing.image的對象”。 有任何想法嗎?

早些時候,我還使用了在列表框所選項目上投射的圖像:

Picturebox1.Image = (Image)listbox.selecteditem;

我記得它可以正常工作,但現在不再可用。 我假設我記得代碼錯誤,還有其他選擇嗎?

您是ListBox.Items.Add'ing錯誤。 添加Image對象,而不是圖像或url或Image.ToString()的字符串路徑。

我現在知道了..您沒有在做ListBox.Items.Add(Image),因為否則您會在列表框中看到“垃圾”,因此答案是創建一個包裝對象:

class ImageWrapper
{
  public Image image;
  public string displayName;
  public override string ToString()
  {
    return displayName;
  }
}

然后做

var iw = new ImageWrapper();
iw.image = <yourImage>;
iw.displayName = "Text for listbox here";
ListBox.Items.Add(iw);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM