将图像存储到windows phone 7中的独立存储中
基本上我使用Visual Studio/Expression Blend来执行我的应用程序。其作品与用户一样可以选择他/她想要编辑的图片,编辑后用户只需点击保存按钮,编辑后的图片将保存在独立存储中,但我无法命令保存按钮保存将图像存入独立存储器,以便希望有人会提前通过一些示例代码来帮助我。将图像存储到windows phone 7中的独立存储中
我试着用下面的代码,但是当我按下保存按钮时有一个空引用错误。我的想法是,当你按下保存时,应用程序不知道要将哪个图像保存到隔离存储器中,并且不能确定我的想法是否正确。任何人都可以帮助我这个。非常感谢。
private void btnSave_Click(object sender, RoutedEventArgs e)
{
String tempJPEG = "TempJPEG";
var myStore = IsolatedStorageFile.GetUserStoreForApplication();
if (myStore.FileExists(tempJPEG))
{
myStore.DeleteFile(tempJPEG);
}
IsolatedStorageFileStream myFileStream = myStore.CreateFile(tempJPEG);
Uri uri = new Uri("TestImage.jpg", UriKind.Relative);
StreamResourceInfo sri = Application.GetResourceStream(uri);
BitmapImage bitmap = new BitmapImage();
bitmap.CreateOptions = BitmapCreateOptions.None;
bitmap.SetSource(sri.Stream);
WriteableBitmap wb = new WriteableBitmap(bitmap);
Extensions.SaveJpeg(wb, myFileStream, wb.PixelWidth, wb.PixelHeight, 0, 85);
myFileStream.Close();
这是代码
private void saveButtonClick(object sender, RoutedEventArgs e)
{
try
{
using (var isf = IsolatedStorageFile.GetUserStoreForApplication())
{
if (isf.FileExists("myImage.jpg"))
isf.DeleteFile("myImage.jpg");
using (var isfs = isf.CreateFile("myImage.jpg"))
{
var bmp = new WriteableBitmap(myImageElement,
myImageElement.RenderTransform);
bmp.SaveJpeg(isfs, bmp.PixelWidth, bmp.PixelHeight, 0, 100);
}
}
}
catch (Exception exc)
{
MessageBox.Show(exc.Message);
}
}
这里myImageElement
的工作版本是在其中显示图像的图像元素。
嗨,你的这段代码放在保存按钮下面?意思是在你点击保存按钮后,图像将存储到独立的存储器中?顺便说一下,图像对象是什么? – user801456 2011-06-16 13:45:30
你可以将代码放在任何你想要的地方,因为你想保存图像,你可以把它放在按钮的ClickEvent处理程序中。通过[图像对象]我的意思是你正在使用的图像元素来显示图像 – 2011-06-17 05:20:32
我厌倦了,但仍然错误。 bi.SetSource(pic); 你在哪里申报你的照片? – user801456 2011-06-17 05:38:43
显示保存代码。 – 2011-06-16 13:21:49