c# winform中listView怎么异步加载网络图片? http://chunniux.blog.163.com/blog/static/148497192011111924134844/并行编程 ,,可以参考 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 imageList1.Images.Add( WebRequest.Create(new Uri("图片地址")).GetResponse().GetResponseStream() );我是在 for 循环中添加图片的,请问这样怎么用线程呢?现在因为调用了webRequest引起阻塞! Parallel.For(0, matARows, i => { });这个循环里的每一个都会开个自己执行啊 采用 // req1.BeginGetResponse(new AsyncCallback(GetResponseCallBack), temp1);begingetresponse异步加载 /// <summary> /// 异步回调方法 /// </summary> /// <param name="ia"></param> public void GetResponseCallBack(IAsyncResult ia) { ///线程锁 lock (lockThis) { ImageListReq temp1 = ia.AsyncState as ImageListReq; HttpWebRequest req = temp1.Req; QzonePhotoInfo pinfo = temp1.Pinfo; HttpWebResponse resp = req.EndGetResponse(ia) as HttpWebResponse; Image img1 = Image.FromStream(resp.GetResponseStream()); imageList1.Images.Add(pinfo.Name, img1); } } 用VSS做二次开发,在64位机子上运行不了 StatusStrip和tabControl的冲突问题.... C#一个windows服务项目如何生成和安装? 用水晶报表的子报表功能,为什么每次显示报表要我输入数据库密码,如何解决 C#里面显示" " % 等特别字符的方法是什么? 错误156:在关键字'AS'附近有语法错误 这个using起什么作用??? 高手救命,调用dll时提示"未将对象引用设置到对象的实例。"错误 asp.net中如何识别C#编写的存放在某一目录下的DLL C#中关于RSA的问题 在C# winform开发中如何检测耳机是否已插入? c#绘图程序 内存占用巨大,求解决
imageList1.Images.Add( WebRequest.Create(new Uri("图片地址")).GetResponse().GetResponseStream() );我是在 for 循环中添加图片的,请问这样怎么用线程呢?现在因为调用了webRequest引起阻塞!
{
});这个循环里的每一个都会开个自己执行啊
异步加载
/// <summary>
/// 异步回调方法
/// </summary>
/// <param name="ia"></param>
public void GetResponseCallBack(IAsyncResult ia)
{ ///线程锁
lock (lockThis)
{
ImageListReq temp1 = ia.AsyncState as ImageListReq;
HttpWebRequest req = temp1.Req; QzonePhotoInfo pinfo = temp1.Pinfo;
HttpWebResponse resp = req.EndGetResponse(ia) as HttpWebResponse;
Image img1 = Image.FromStream(resp.GetResponseStream());
imageList1.Images.Add(pinfo.Name, img1);
} }