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

时间:2018-08-27 14:16:12

标签: c# sql winforms

美好的一天。

我有一个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不起作用。

谢谢。

1 个答案:

答案 0 :(得分:0)

我几乎是正确的。 因此,如果要在“默认程序” 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;

        }

Yaaaay 4 ME!

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

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