欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

winform 中显示异步下载的图片

程序员文章站 2022-06-05 13:35:17
private void datagridview1_rowsadded(object sender, datagridviewrowsaddedeventargs...
private void datagridview1_rowsadded(object sender, datagridviewrowsaddedeventargs e)
{
  ////利用 webclient 来下载图片
  using (webclient wc = new webclient())
  {
    ////webclient 下载完毕的响应事件绑定
    wc.downloaddatacompleted += new downloaddatacompletedeventhandler(wc_downloaddatacompleted);

    ////开始异步下载,图片url路径请根据实际情况自己去指定
    ////同时将datagridview当前行的行号传递过去,用于指定图片显示的cell
    wc.downloaddataasync(new uri(this.datagridview1.rows[e.rowindex].cells[1].value.tostring()),
      e.rowindex);
  }
}


void wc_downloaddatacompleted(object sender, downloaddatacompletedeventargs e)
{
  ////如果下载过程未发生错误,并且未被中途取消
  if (e.error == null && !e.cancelled)
  {
    ////将图片显示于对应的指定单元格, e.userstate 就是传入的 e.rowindex
    ////e.result 就是下载结果
    this.datagridview1.rows[(int)e.userstate].cells["src"].value = e.result;
    // this.datagridview1.rows[(int)e.userstate].cells["test"].value = getimage("1");
  }
}

以上就是显示异步下载图片的一些代码片段,希望能给大家一个参考,也希望大家多多支持。