C# UWP图像选择器不适用于图像源
我正在尝试让图像选择器工作,它确实工作了,但由于某些原因,它不会作为图像填充C# UWP图像选择器不适用于图像源,c#,uwp,C#,Uwp,我正在尝试让图像选择器工作,它确实工作了,但由于某些原因,它不会作为图像填充 var openPicker = new FileOpenPicker { ViewMode = PickerViewMode.Thumbnail, SuggestedStartLocation = PickerLocationId.PicturesLibrary }; openPicker.FileType
var openPicker = new FileOpenPicker
{
ViewMode = PickerViewMode.Thumbnail,
SuggestedStartLocation = PickerLocationId.PicturesLibrary
};
openPicker.FileTypeFilter.Add(".jpg");
openPicker.FileTypeFilter.Add(".jpg");
openPicker.FileTypeFilter.Add(".jpeg");
openPicker.FileTypeFilter.Add(".png");
var file = await openPicker.PickSingleFileAsync();
if (file != null)
{
//Image img = new Image();
userImage.Source = new BitmapImage(new Uri(file.Path));
//await ProcessFile(file);
}
这幅图很简单:
<image name="userImage" height="500px" width="500px"/>
您可以将流设置为源,而不是路径
var result = new BitmapImage();
using (var randomAccessStream = await file.OpenAsync(FileAccessMode.Read))
{
await result.SetSourceAsync(randomAccessStream);
}
这不起作用,因为UWP应用程序仅对某些用户文件夹具有权限,即使您需要浏览他们的文件,您也需要在应用程序的package.manifest中找到要访问的文件夹。为了简化,您可以在应用程序数据文件夹中创建文件的副本,并从中获取路径,或者从文件流中设置图像源,但请小心,第二个选项可能会导致一些高内存使用率和泄漏。你可以找到如何避免这种情况