使用PhotoChooserTask
我的Windows Phone应用程序中有一个图像列表(作为内容)。 如何使用PhotoChooserTask查看它们?
以下是通过单击按钮触发任务的基本粗略示例。
下面的代码使用按钮单击事件来触发PhotoChooserTask(),然后将所选图像放入图像控件。
您将需要使用引用任务
using Microsoft.Phone.Tasks;
然后使用如下代码
public MainPage() { InitializeComponent(); photoChooserTask = new PhotoChooserTask(); photoChooserTask.Completed += new EventHandler(photoChooserTask_Completed); } private void photochooserbtn_Click(object sender, RoutedEventArgs e) { photoChooserTask.Show(); } void photoChooserTask_Completed(object sender, PhotoResult e) { if (e.TaskResult == TaskResult.OK) { System.Windows.Media.Imaging.BitmapImage bmp =new System.Windows.Media.Imaging.BitmapImage(); bmp.SetSource(e.ChosenPhoto); imagecontrol.Source = bmp; } }
如果您已经预先加载了应用程序的图像,那么您可以像下面这样显示它们:
这假设您的页面的数据上下文具有名为“Images”的属性
public IEnumerable Images { get; set; }
并且你正在填充这样的属性:
Images = new List { new Uri("Images/image1.png", UriKind.Relative), new Uri("Images/image2.png", UriKind.Relative), new Uri("Images/image3.png", UriKind.Relative), new Uri("Images/image4.png", UriKind.Relative) };
这假定您已将图像放在项目的“Images”文件夹下,并且Build Action设置为Content
上面的解决方案将为您提供图像的垂直列表。 如果你想使它更好一些,那么使用WP7工具包并将ListBox
的ItemsPanel
更改为WrapPanel
您不能使用PhotoChooserTask直接查看您添加到项目中的图片(作为内容)…要使其工作,您必须在启动之前将图片保存到图片库(使用MediaLibrary类) PhotoChooserTask!