我只是尝试使用 Share Charm 将 DocumentsLibrary 中名为Document.pdf的文件附加到电子邮件中。我下面的代码在本地机器上完美运行:
private async void OnDataRequestedFiles(DataTransferManager sender, DataRequestedEventArgs e)
{
List<IStorageItem> shares = new List<IStorageItem>();
StorageFile filetoShare = await Windows.Storage.KnownFolders.DocumentsLibrary.GetFileAsync("Document.pdf");
if (filetoShare != null)
{
shares.Add(filetoShare);
filetoShare = null;
}
if (shares != null)
{
DataPackage requestData = e.Request.Data;
requestData.Properties.Title = "Title";
requestData.Properties.Description = "Description"; // The description is optional.
requestData.SetStorageItems(shares);
shares = null;
}
else
{
e.Request.FailWithDisplayText("File not Found.");
}
}
但是当我在 Windows Surface 平板电脑上运行完全相同的代码时,我会感到可怕的“现在没有什么可分享的”。在 Charms 弹出区域的右侧。
这里有一些背景知识可以提供帮助:
- 我不想使用文件选择器...我知道我正在寻找的确切文件
- 我已经在清单中启用了文档库功能
- 我在清单中为 pdf 添加了文件类型关联
- 是的,该文件确实存在并且在文档库中
- 在表面上的邮件应用程序中正确设置了电子邮件帐户
- 我可以从平板电脑成功发送文本电子邮件...只是不能发送带有附件的电子邮件
就像我说的那样,这可以在我的 Win 8 开发机器上正常运行……只是在 Surface 上不行。我想知道 Surface 是否有不同的文件或文件夹权限?
感谢您的帮助...这让我发疯