【发布时间】:2014-02-04 06:13:43
【问题描述】:
我在显示来自 ApplicationData.Current.LocalFolder 的图像时遇到问题。
我能够保存图像并将其存储在LocalFolder 中,但将其显示在Image 控件或LongListSelector 中时,图像不会显示。
代码如下:
private async void StoreToFile(string imageFileName)
{
StorageFile file = await ApplicationData.Current.LocalFolder.CreateFileAsync(imageFileName, CreationCollisionOption.GenerateUniqueName);
using (Stream current = await file.OpenStreamForWriteAsync())
{
await photoStream.CopyToAsync(current);
}
}
这里是绑定的代码:
var folder = ApplicationData.Current.LocalFolder;
var images = await folder.GetFilesAsync();
Recent.ItemsSource = images.ToList();
XAML 代码:
<phone:PivotItem Name="pivot1" Header="item2" Background="White">
<phone:LongListSelector x:Name="Recent" Margin="0,0,0,72" ItemsSource="{Binding lst}" >
<phone:LongListSelector.ItemTemplate>
<DataTemplate>
<StackPanel>
<Image Source="{Binding Path}" Width="60"/>
</StackPanel>
</DataTemplate>
</phone:LongListSelector.ItemTemplate>
</phone:LongListSelector>
</phone:PivotItem>
我能够将路径绑定到 TextBlock 并能够看到确切的路径,例如:
C:\Data\Users\DefApps\AppData{GUID}\Local\bucket.png
但如果我绑定到图像源,图像不会显示。
谁能看出我做错了什么?
【问题讨论】:
-
您无法绑定到此类路径,您必须自己从流中加载图像并创建位图以绑定到
Image.Source。 -
感谢您提供一个小的工作示例
标签: c# xaml windows-phone-8