【问题标题】:Reading PDF files using Adobe or any PDF reader使用 Adob​​e 或任何 PDF 阅读器阅读 PDF 文件
【发布时间】:2014-02-25 09:41:40
【问题描述】:

在我的应用程序中,我将所有 PDF 放在一个名为 PDF 的文件夹中,其名称类似于 First.pdfSecond.pdf.

我有LongListSelector,里面有一些东西。当我单击每个项目时,我将所选项目值存储在一个字符串中。

private void longListSelector_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            MyObject item  =  longListSelector.SelectedItem as MyObject;
            MessageBox.Show(item.ST);
        }

上面的代码给了我像FirstSecond这样的名字。

现在我只想用那个名字打开对应的pdf文件。

编辑

我正在开发 Windows Phone 8 应用程序,PDF 位于我的应用程序内的文件夹 MyPdf 中。

**编辑 1 **

private async void LaunchPDF(string name) 
        {
            StorageFile pdfFile = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync("xyz.pdf");
            // Launch the pdf file.
            Windows.System.Launcher.LaunchFileAsync(name);
        }

在这一行出现错误 Windows.System.Launcher.LaunchFileAsync(name); //有无效的参数。

我可以使用My Emulator 来测试 pdf 是否打开吗?

【问题讨论】:

    标签: c# wpf pdf windows-phone-8 windows-phone


    【解决方案1】:

    你可以使用这个组件:PdfViewer,但是这个组件不是开源的。

    【讨论】:

    • 那么,如果我的应用中有 pdf 文件,就无法打开 pdf 文件?
    • 是的,我已经复制粘贴了他的代码,但出现错误
    • @user2056563 在方法中添加 async 关键字。 private async void MethodName() {}
    【解决方案2】:

    假设应用程序是针对 Windows Phone OS 8 开发的。

    您可以使用启动器打开它。

    // Get the file
    StorageFile pdfFile = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync("xyz.pdf");
    
    // Launch the pdf file.
    Windows.System.Launcher.LaunchFileAsync(xyz.pdf);
    

    关于 URI 启动器的LINK

    【讨论】:

    • 当我复制粘贴你的代码时它给了我错误:等待操作不能在异步方法中使用?
    • 在方法定义中的返回类型关键字之前放置一个 async 关键字。像这样: public async void blaBlaBla()
    猜你喜欢
    • 1970-01-01
    • 2021-06-02
    • 2013-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-24
    相关资源
    最近更新 更多