1
           foreach (string imageFile in files)
           {
                try
                {
                    System.Drawing.Image myImage = Image.FromFile(imageFile);
                    myImageList.Images.Add(myImage);
                    myImage.Dispose();
                }
                catch { }
            }


            for (int i = 0; i < myImageList.Images.Count; i++) //I have a list view containing images
            {
                ListViewItem item = new ListViewItem();
                item.ImageIndex = i;
                imageListView.Items.Add(item);
            }

            private void imageListView_Clicked(object sender, EventArgs e)
            {
                 string myImage = imageListView.SelectedItems.ToString(); //get the name of image selected
            }

ここで、画像が選択されたときに画像の名前を取得したいと思います。上記の imageListView_Clicked() 関数のようなものです。

しかし、それは機能していません。

4

2 に答える 2

0

コードのこの部分を変更して、イメージの名前をそのTagプロパティに配置する必要があります。

 foreach (string imageFile in files)
       {
            try
            {
                System.Drawing.Image myImage = Image.FromFile(imageFile);
                myImage.Tag="image name for each item";//you can put for example image file name
                myImageList.Images.Add(myImage);
                myImage.Dispose();
            }
            catch { }
        }

選択した画像の名前を取得したい場合は、次のコードを使用できます。

private void imageListView_Clicked(object sender, EventArgs e)
 {
     String imgName= (String)imageListView.SelectedItems[0].ImageList.Images[0].Tag;

 }
于 2013-06-24T10:00:37.980 に答える