共用方式為


HOW TO:使用 Windows Form ImageList 元件加入或移除影像

更新:2007 年 11 月

Windows Form ImageList 元件在與另一控制項產生關聯之前通常會先填入 (Populate) 影像。不過,在影像清單與另一控制項產生關聯後,仍可加入和移除影像。

注意事項:

當您移除影像時,請確認關聯的控制項之 ImageIndex 屬性是否仍有效。

若要以程式設計的方式加入影像

  • 使用影像清單的 Images 屬性的 Add 方法。

    在下列程式碼範例中,影像的位置路徑設定為 [我的文件] 資料夾。這個位置的使用,是因為您可以假設大部分執行 Windows 作業系統的電腦都會包含這個資料夾。選擇這個位置也可以讓具有最基本系統存取層級的使用者,能夠更安全地執行應用程式。下列程式碼範例假設您已經在表單中加入 ImageList 控制項。

    Public Sub LoadImage()
       Dim myImage As System.Drawing.Image = _
         Image.FromFile _
       (System.Environment.GetFolderPath _
       (System.Environment.SpecialFolder.Personal) _
       & "\Image.gif")
       ImageList1.Images.Add(myImage)
    End Sub
    
    public void addImage()
    {
    // Be sure that you use an appropriate escape sequence (such as the 
    // @) when specifying the location of the file.
       System.Drawing.Image myImage = 
         Image.FromFile
       (System.Environment.GetFolderPath
       (System.Environment.SpecialFolder.Personal)
       + @"\Image.gif");
       imageList1.Images.Add(myImage);
    }
    
    public:
       void addImage()
       {
       // Replace the bold image in the following sample 
       // with your own icon.
       // Be sure that you use an appropriate escape sequence (such as 
       // \\) when specifying the location of the file.
          System::Drawing::Image ^ myImage = 
             Image::FromFile(String::Concat(
             System::Environment::GetFolderPath(
             System::Environment::SpecialFolder::Personal),
             "\\Image.gif"));
          imageList1->Images->Add(myImage);
       }
    

若要使用關鍵值加入影像

  • 使用影像清單的 Images 屬性的其中一個 Add 方法,該屬性採用一個關鍵值。

    在下列程式碼範例中,影像的位置路徑設定為 [我的文件] 資料夾。這個位置的使用,是因為您可以假設大部分執行 Windows 作業系統的電腦都會包含這個資料夾。選擇這個位置也可以讓具有最基本系統存取層級的使用者,能夠更安全地執行應用程式。下列程式碼範例假設您已經在表單中加入 ImageList 控制項。

    Public Sub LoadImage()
       Dim myImage As System.Drawing.Image = _
         Image.FromFile _
       (System.Environment.GetFolderPath _
       (System.Environment.SpecialFolder.Personal) _
       & "\Image.gif")
       ImageList1.Images.Add("myPhoto", myImage)
    End Sub
    

若要以程式設計的方式移除所有影像

  • 使用 Remove 方法來移除單一影像,

    -或-

    使用 Clear 方法來清除影像清單中的所有影像。

    ' Removes the first image in the image list
    ImageList1.Images.Remove(myImage)
    ' Clears all images in the image list
    ImageList1.Images.Clear()
    

若要根據關鍵值移除影像

  • 使用 RemoveByKey 方法來根據關鍵值移除單一影像。

    ' Removes the image named "myPhoto" from the list.
    ImageList1.Images.RemoveByKey("myPhoto")
    

請參閱

參考

ImageList 元件概觀 (Windows Form)

其他資源

ImageList 元件 (Windows Form)

影像、點陣圖和中繼檔