刚学silverlight,请教一下如何保存WebService返回的图片数据流??

issay789 2010-04-06 12:06:36
VS2010新建的SilverLight Application中:

从WebService返回图片数据流,我想要保存在temp文件夹中,然后在silverlight中显示出来。

请问我的代码该怎么改啊?显示图片我使用的是ImageBox:image1。请高手指点
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;

using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;

namespace SilverlightApplication1
{
public partial class MainPage : UserControl
{
public MainPage ( )
{
InitializeComponent ( );
}

private void btnAmplify_Click ( object sender, RoutedEventArgs e )
{
msg.Text = "test!";
}
private void btnSearch_Click ( object sender, RoutedEventArgs e )
{
System.Uri uri = new Uri(@"http://www.google.com.hk/images/nav_logo8.png");

WebClient imgLoader = new WebClient ( );
imgLoader.DownloadStringCompleted += new OpenReadCompletedEventHandler ( imgLoader.DownloadStringCompleted );
imgLoader.DownloadStringAsync ( new Uri ( uri ) );
System.Net.WebRequest mwr = System.Net.WebRequest.Create( uri );
System.Net.WebResponse mrsp = mwr.BeginGetResponse( );
string mapFileName = @"C:\Documents and Settings\Administrator\桌面\wmsmap.gif";
//System.IO.Path.GetTempPath() + @"wmsmap.gif";
System.IO.File.OpenWrite( mrsp.GetResponseStream ( ), mapFileName)
//copyStreamToFile ( mrsp.GetResponseStream ( ), mapFileName );
Image myImage = new Image();
myImage.Source = new BitmapImage(new Uri("myPicture.jpg", UriKind.RelativeOrAbsolute));
LayoutRoot.Children.Add(myImage);


image1. (mapFileName);
}

private static void copyStreamToFile(System.IO.Stream stream, string destination)
{
System.IO.BinaryReader bs = new ;
{
using (System.IO.FileStream os = System.IO.File.OpenWrite(destination))
{
byte[] buffer = new byte[2 * 4096];
int nBytes;
while ((nBytes = bs.Read(buffer, 0, buffer.Length)) > 0)
{
os.Write(buffer, 0, nBytes);
}
}
}
}

}
}
...全文
258 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
issay789 2010-04-06
  • 打赏
  • 举报
回复
呵呵粗心了,没发现这个问题。
我改用System.IO.IsolatedStorage保存数据流为文件,然后保存成png图片,之后怎么在SL里面生成图片呢?我希望做成查看地图的那种效果。
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 luminji 的回复:]
string mapFileName = @"C:\Documents and Settings\Administrator\桌面\wmsmap.gif";

有问题,保存不到本地。
SL有个独立存储区,你只能保存到那里。SL是不能访问本地路径的。
[/Quote]
不能直接访问本地路径
  • 打赏
  • 举报
回复
string mapFileName = @"C:\Documents and Settings\Administrator\桌面\wmsmap.gif";

有问题,保存不到本地。
SL有个独立存储区,你只能保存到那里。SL是不能访问本地路径的。

8,735

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧