点击打开PDF文件按钮
本文关键字:文件 按钮 PDF | 更新日期: 2023-09-27 18:08:52
我想打开一个pdf文件在winRT应用程序(地铁风格的应用程序)通过点击一个按钮,文件应该在windows8默认阅读器打开。我尝试了这个代码,其中按钮单击方法名称是DefaultLaunch_click()
:
async void DefaultLaunch_click()
{
// Path to the file in the app package to launch
string imageFile = @"images'ret.png";
// Get the image file from the package's image directory
var file = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(imageFile);
if (file != null)
{
// Set the recommended app
var options = new Windows.System.LauncherOptions();
options.PreferredApplicationPackageFamilyName = “Contoso.FileApp_8wknc82po1e”;
options.PreferredApplicationDisplayName = “Contoso File App”;
// Launch the retrieved file pass in the recommended app
// in case the user has no apps installed to handle the file
bool success = await Windows.System.Launcher.LaunchFileAsync(file, options);
if (success)
{
// File launched
}
else
{
// File launch failed
}
}
else
{
// Could not find file
}
}
它适用于。png文件,但我想要。pdf文件,我用M.pdf替换了1.png(在将其包含在图像文件夹中之后),并将M.pdf的构建内容设置为嵌入式资源,运行程序,但它显示错误
**The system cannot find the file specified. (Exception from HRESULT: 0x80070002)**
在我将PDF文件构建操作设置为内容并始终复制到输出目录后,此代码对我有效。
private async void Button_Click(object sender, RoutedEventArgs e)
{
string imageFile = @"images'somepdffile.pdf";
// Get the image file from the package's image directory
var file = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(imageFile);
if (file != null)
{
bool success = await Windows.System.Launcher.LaunchFileAsync(file, options);
if (success)
{
// File launched
}
else
{
// File launch failed
}
}
else
{
// Could not find file
}
}