wpf在Adobe Reader中打开PDF文件,只需单击一个按钮即可

时间:2015-04-28 17:07:07

标签: c# wpf xaml ado.net

我需要一个按钮才能使用Adobe Reader打开 PDF 文件。我有以下代码但它不起作用。该文件位于我的应用程序的Books文件夹中。

private void openPDF(object sender, RoutedEventArgs e)
{
    try
    {
        System.Diagnostics.Process process = new System.Diagnostics.Process();
        bookPDF = "/Books/" + dataRow.ItemArray[6].ToString();
        Uri pdf = new Uri(bookPDF, UriKind.Relative);
        process.StartInfo.FileName = new Uri(bookPDF, UriKind.Relative).ToString();
        process.Start();
        process.WaitForExit();
    }
    catch
    {
        MessageBox.Show("Could not open the file.", "Error", MessageBoxButton.OK, MessageBoxImage.Warning);
    }
}

我测试了一个带有测试pdf文件的简单字符串,然后打开它。

...
String file = "C:\\pdf\\Windows_Server_2008_R2_Unleashed.pdf";
process.StartInfo.FileName = file;
process.Start();
process.WaitForExit();

2 个答案:

答案 0 :(得分:0)

更改第6行:

bookPDF = "/Books/" + dataRow.ItemArray[6].ToString();

为:

bookPDF = "Books\\" + dataRow.ItemArray[6].ToString();

Microsoft Windows命名约定使用反斜杠作为路径中的分隔符 https://msdn.microsoft.com/en-us/library/windows/desktop/aa365247%28v=vs.85%29.aspx

答案 1 :(得分:0)

您可以将第6行更改为:

bookPDF = string.Format(@"books\{0}", dataRow.ItemArray[6].ToString());         

如果你的应用程序目录中有一个指定了pdf的books文件夹,这应该可行。