首页 > 解决方案 > 打开存储在文件夹中且文件路径存储在数据库中的 .pdf 文件(在 axAcroPDF 中...)的功能/方法是什么?

问题描述

再会。

我有一个 Windows 窗体应用程序 (C#)。通过“打开文件对话框”,我可以选择一个 .pdf 文件。选定的 .pdf 文件被复制并存储在预定的目的地。所选 .pdf 文件的文件路径存储在 SQL 数据库中。

打开存储在文件夹中且文件路径存储在数据库中的 .pdf 文件(在 axAcroPDF 中...)的功能/方法是什么?

这就是我所拥有的,代码虎钳:

            private void txtST1Cap_DoubleClick(object sender, EventArgs e)
        {
            SavedDocumentPath1 = @"XXX\";

            using (OpenFileDialog OpenFileDialog1 = new OpenFileDialog() { ValidateNames = true, Multiselect = false, Filter = "PDF|*.pdf" })

                if (openFileDialog1.ShowDialog() == DialogResult.OK)
                {
                    //display PDF in reader
                    OpenedDocument1 = openFileDialog1.FileName;
                    axAcroPDF1ST1.src = openFileDialog1.FileName;

                    //code for getting REF No. from opened file name
                    OpenedDocumentREF = Path.GetFileName(openFileDialog1.FileName);
                    REFfromOpenedDocument = OpenedDocumentREF.Substring(0, 12);
                    txtST1Cap.Text = REFfromOpenedDocument;

                    //destination of to-be saved document
                    SavedDocLoc1 = (SavedDocumentPath1 + Path.GetFileName(openFileDialog1.FileName));
                    lblST1CapLocation.Text = SavedDocLoc1;
                }

        }
        private void btnST1Cap_Click(object sender, EventArgs e)
        {

            openFileDialog1.FileName=SavedDocLoc1;
            axAcroPDF1ST1.src = openFileDialog1.FileName;
        }

按钮 Clicl btnST1Cap 不起作用。

谢谢你。

标签: c#sqlwinforms

解决方案


我几乎是正确的。因此,如果想在“默认程序”System.Diagnostics.Process 中打开 PDF 文档,则使用...:

          private void btnST1Cap_Click(object sender, EventArgs e)
        {
            System.Diagnostics.Process.Start(lblST1CapLocation.Text);

       }

如前所述,这将打开一个默认的 .pdf 浏览器。

我想以我的形式打开它(在 axAcroPDF ...):

        private void btnST1Cap_Click(object sender, EventArgs e)
        {
            axAcroPDF1ST1.src = lblST1CapLocation.Text;

        }

耶 4 我!

在上述情况下,“lblST1CapLocation.Text”是存储文件路径的标签。如果愿意,可以插入直接文件路径:

System.Diagnostics.Process.Start(@"c:\myPdf.pdf");

推荐阅读