美好的一天。
我有一个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不起作用。
谢谢。
答案 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");