在WPF中的RichTextBox中打开PDF文件

我可以在RichTextBox中打开PDF文件吗?

简答:没有。

更长的答案:不可以。一个RichTextBox用于显示富文本。 PDF可以包含任何内容,包括文本,但这不是RichTextBox底层的文档模型。 此外,WPF本身不处理PDF。 但是,有第三方控件。

这个问题也有一些可能对您有用的指针,尽管不使用RichTextBox。

您需要使用Acrobat Control for ActiveX或至少相当于Adobe Reader 9并使用

using PdfLib; namespace WindowsFormsApplication1{ public partial class ViewerForm : Form{ public ViewerForm() { InitializeComponent(); PdfLib.AxAcroPDF axAcroPDF1; axAcroPDF1.LoadFile(@"C:\Documents and Settings\jcrowe\Desktop\Medical Gas\_0708170240_001.pdf"); axAcroPDF1.Show(); } private void richTextBox1_TextChanged(object sender, EventArgs e) { } } } 

您可以在几秒钟内编写一个包含WebBrowser控件的简单应用程序,只需调用navigate方法并为其指定一个指向所需文档的URL。

XAML:

    

C#:

 private void Window1_Loaded(object sender, WindowLoadedArgs args) { Browser.Navigate(new URL("path to document.pdf"); } 

注意:我是从内存中写的,所以请考虑这个伪代码,而不是那些可以按原样运行的东西。