我的Windows Phone应用程序中有一个图像列表(作为内容)。如何使用PhotoChooserTask查看它们?
答案 0 :(得分:2)
以下是通过单击按钮触发任务的基本粗略示例。
以下代码使用按钮单击事件来触发PhotoChooserTask(),然后将所选图像放入图像控件。
您需要使用
引用任务using Microsoft.Phone.Tasks;
然后使用以下代码
public MainPage()
{
InitializeComponent();
photoChooserTask = new PhotoChooserTask();
photoChooserTask.Completed += new EventHandler<PhotoResult>(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;
}
}
答案 1 :(得分:1)
如果您已经预先加载了应用程序的图像,那么您可以像这样显示它们:
<ListBox ItemsSource="{Binding Images}">
<ListBox.ItemTemplate>
<DataTemplate>
<Image Source="{Binding}" Width="200"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
这假设您网页的数据上下文有一个名为“Images”的属性
public IEnumerable<Uri> Images { get; set; }
你正在填充这样的财产:
Images = new List<Uri>
{
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工具包并将ItemsPanel
的{{1}}更改为ListBox
WrapPanel
答案 2 :(得分:0)
您不能使用PhotoChooserTask直接查看您添加到项目中的图片(作为内容)...要使其工作,您必须将图片保存到图片库(使用{{3 }})在启动PhotoChooserTask之前!