从WP内存加载图片

时间:2012-03-25 20:41:11

标签: c# wpf windows-phone-7

我想知道我应该编写什么类型的代码才能从Windows Phone的相机胶卷中选择一张照片。有什么想法吗?

如果有人可以提供帮助,我将不胜感激。我正在参加大学的比赛......

2 个答案:

答案 0 :(得分:0)

最简单的方法是使用PhotoChooserTask。您可以找到更多信息和示例here

如果您想要更多控制(并且不介意编写更多代码),您还可以使用MediaLibrary课程here直接访问相册。

答案 1 :(得分:0)

您无法以编程方式以任何方式从库中选择照片。 Windows Phone仅允许您选择提示用户,以便他从相机胶卷中选择它。您无法控制用户选择的屏幕,只需启动任务即可返回用户选择的照片。

也就是说,您可以选择包含在Microsoft.Phone.Tasks库中的PhotoChooserTask的图片。或者,通常也会在用户看到选择照片的选项中看到相机捕获任务(当用户拍摄照片而不是选择照片时)。相机捕获的示例是here

using Microsoft.Phone.Tasks;
using System.IO;
using System.Windows.Media.Imaging;
...
PhotoChooserTask selectphoto = null;
private void button1_Click(object sender, RoutedEventArgs e)
{
selectphoto = new PhotoChooserTask();
selectphoto.Completed += new EventHandler(selectphoto_Completed);
selectphoto.Show();
}
void selectphoto_Completed(object sender, PhotoResult e)
{
if (e.TaskResult == TaskResult.OK)
{
BinaryReader reader = new BinaryReader(e.ChosenPhoto);
image1.Source = new BitmapImage(new Uri(e.OriginalFileName));
}
}