我正在使用 CameraCaptureTask 捕获图像并将它们保存到 IsolatedStorage。然后我用这些保存的图像填充一个列表框,recent
在我的 MainPage 上命名。然后我想使用 ShareMediaTask 来分享这些图像之一。但是,我遇到问题的 ShareMediaTask 要求是从 IsolatedStorage 获取图像的文件路径。我正在做的是使用列表框的 SelectionChanged 事件处理程序来确定用户选择要共享的图像。然后,在按钮单击事件中,我在 IsolatedStorage 中搜索以从列表框中检索所选图像的完整路径。即使显示了完整路径,ShareMediaTask 也永远不会完成。
MainPage.xaml.cs
//The `recent` ListBox's SelectionChanged event
private void recent_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
//retrieve the name of the image that was autogenerated by CameraCaptureTask completed event
fileName = capturedPicture.FileName;
//Combine the directory and file name
filePath = Path.Combine(PictureRepository.IsolatedStoragePath, fileName);
}
private void Share()
{
if(fileName != null)
{
var isoFile = IsolatedStorageFile.GetUserStoreForApplication();
//use the path to open the picture file from the isolated storage by using the IsolatedStorageFile.OpenFile method
var fileStream = isoFile.OpenFile(filePath, FileMode.Open, FileAccess.Read);
string name = fileStream.Name;
_shareTask = new ShareMediaTask();
_shareTask.FilePath = name;
_shareTask.Show();
}
}
在Share()
通过按钮单击事件调用的方法中,我想在 IsolatedStorage 中获取图像的完整路径的唯一方法是使用IsolatedStorageFile.OpenFile
允许我访问的方法fileStream.Name
。看来还是不行。