将位于网站上的图像添加到c#上的列表视图中

本文关键字:添加 列表 视图 图像 网站 于网站 | 更新日期: 2023-09-27 17:57:53

我想知道是否可以从以下网站添加一些图像:

http://www.website.com/892374_838.jpghttp://www.website.com/2324374_838.jpghttp://www.website.com/23431_838.jpg

动态地转换为c#中的列表视图。

将位于网站上的图像添加到c#上的列表视图中

假设一个名为listView1的listview控件,下面将为您执行此操作:

    private void PopulateListView()
    {
        ImageList images = new ImageList();
        images.Images.Add(
            LoadImage("http://www.website.com/892374_838.jpg"));
        images.Images.Add(
            LoadImage("http://www.website.com/23431_838.jpg"));
        listView1.SmallImageList = images;
        listView1.Items.Add("An item", 0);
        listView1.Items.Add("Another item item", 1);
    }
    private Image LoadImage(string url)
    {
        System.Net.WebRequest request =
            System.Net.WebRequest.Create(url);
        System.Net.WebResponse response = request.GetResponse();
        System.IO.Stream responseStream =
            response.GetResponseStream();
        Bitmap bmp = new Bitmap(responseStream);
        responseStream.Dispose();
        return bmp;
    }

类似的东西?

string imageUrl = "";
// Create the requests.
WebRequest requestPic = WebRequest.Create(imageUrl);
WebResponse responsePic = requestPic.GetResponse();
Image webImage = Image.FromStream(responsePic.GetResponseStream());
// save image
webImage.Save("C:''image.jpg");
ImageList imgList;
imgList.Images.Add(webImage);
ListView1.LargeImageList = imgList;

你应该告诉项目的类型,你说的是Windows窗体、WPF。。。?

如果是Windows窗体,您应该首先使用WebClient,获取图像流,然后制作image.FromStream().

如果WPF可以做到这一点,只需将ImageSource属性设置为URL即可。

我建议你采用罗马的方法:分而治之。

你应该把问题分成两到三部分。首先,如何从URL中检索图像。第二(可选),如果必须多次加载,则本地存储图像,等等。第三,显示图像。此外,我真的不认为所有这些步骤都应该在应用程序的UI层中实现。

如果你想阅读更多关于关注分离的内容,维基百科是你的朋友!