栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

将BitmapImage保存到文件

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

将BitmapImage保存到文件

从Uri创建BitmapImage时,需要时间来下载图像。

如果您检查以下属性,则该值可能为TRUE

objImage.IsDownloading

这样,您可以将侦听器附加到DownloadCompleted事件处理程序,并将所有处理移至该EventHandler。

objImage.DownloadCompleted += objImage_DownloadCompleted;

该处理程序的外观如下所示:

private void objImage_DownloadCompleted(object sender, EventArgs e){  JpegBitmapEnprer enprer = new JpegBitmapEnprer();  Guid photoID = System.Guid.NewGuid();  String photolocation = photoID.ToString() + ".jpg";  //file name  enprer.frames.Add(Bitmapframe.Create((BitmapImage)sender));  using (var filestream = new FileStream(photolocation, FileMode.Create))    enprer.Save(filestream);}

您可能还希望为DownloadFailed添加另一个EventHandler,以便正常处理任何错误情况。

编辑

根据Ben的评论添加了完整的示例类:

public partial class MainWindow : Window{  public MainWindow()  {    InitializeComponent();    SavePhoto("http://www.google.ca/intl/en_com/images/srpr/logo1w.png");  }  public void SavePhoto(string istrImagePath)  {    BitmapImage objImage = new BitmapImage(new Uri(istrImagePath, UriKind.RelativeOrAbsolute));    objImage.DownloadCompleted += objImage_DownloadCompleted;  }  private void objImage_DownloadCompleted(object sender, EventArgs e)  {    JpegBitmapEnprer enprer = new JpegBitmapEnprer();    Guid photoID = System.Guid.NewGuid();    String photolocation = photoID.ToString() + ".jpg";  //file name    enprer.frames.Add(Bitmapframe.Create((BitmapImage)sender));    using (var filestream = new FileStream(photolocation, FileMode.Create))      enprer.Save(filestream);  } }


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/447165.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号