さて、Windows 8には、Readerと呼ばれるクールなPDFおよびXLSリーダーアプリが付属しています。ユーザーがアプリ内の[ヘルプ]ボタンをクリックしたときに表示したいヘルプドキュメントがあります。私のアプリは、そのドキュメントタイプのデフォルトのビューアであるものを使用してPDFドキュメントを起動する必要があります。
しかし、そうではありません。エラーや例外はなく、ブレークポイントを設定しても情報は表示されません。私が持っているコードは次のとおりです。
<Button x:Name="help" Style="{StaticResource HelpAppBarButtonStyle}" Tag="Help" Click="help_Click_1" />
と:
private async void help_Click_1(object sender, RoutedEventArgs e)
{
try
{
Windows.Storage.StorageFile file =
await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(@"\Assets\User Guide.pdf");
await Windows.System.Launcher.LaunchFileAsync(file);
}
catch (Exception exception)
{
Debug.WriteLine(exception.Message);
}
}
さて、ソリューションエクスプローラーの中には、通常のファイルとフォルダーがあります。ルートディレクトリ内にAssetsフォルダーもあり、PDFドキュメントはこのルートフォルダー内にあります。
これが機能しない理由はわかりませんが、上記のコードでファイルをポイントしている方法と関係があると思います。
await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(@"\Assets\User Guide.pdf");
そのドキュメントタイプのデフォルトアプリケーションを使用して、Assetsフォルダーに含まれるドキュメントを正しく表示するにはどうすればよいですか?