VB.Net WebBrowser粘贴命令:在一个解决方案中工作,而在另一个解决方案中工作

时间:2015-10-28 14:11:18

标签: .net vb.net webbrowser-control richtextbox

长话短说:我不得不改变我们当前的项目,以便直接从VB.Net应用程序进行PDF打印。我使用PDFSharp来实现这一目标,并且在大多数情况下我都能正常工作。

但是,部分原因是它需要一种基本类型的richtext,而PDFSharp无法处理。相反,我已经编写了一个基本上将其转换为HTML的小东西,然后我可以更轻松地解析它,并以这种方式填充PDF。

为此,我创建了一个单独的项目来测试,以下过程有效:

  1. 创建richtextbox和webbrowser
  2. 使用richtext
  3. 填充richtextbox
  4. 将richtext复制到剪贴板
  5. 将richtext粘贴到WebBrowser documenttext
  6. 访问正文html并使用
  7. 但是,当我尝试将其集成到主项目中时,WebBrowser对象只是偶尔会使用粘贴。大部分时间它都是空白的。据我所知,两者之间绝对一切都是相同的,除了这样一个事实,即在一个人的工作中,一切都在一个阶级内发生,而在一个阶段,它并不是在它的一个阶段。 ; s都在一个模块中。有什么我应该知道的,我不知道这些吗?

    以下是代码的相关部分:

    Private RTF2 As New RichTextBox     'Rich text box to capture original format
    Private Browse2 As New WebBrowser   'WebBrowser object
    Private HTML2 As New RichTextBox    'Rich text box to put the HTML into so it can be processed
    ...
        'Called on the New() of the Module
        Browse2.DocumentText = ""
        Browse2.Document.ExecCommand("EditMode", False, Nothing)
    ...
        RTF2.Clear()
        RTF2.Rtf = Col1
        RTF2.SelectAll()
        RTF2.Copy()
        Clipboard.SetText(RTF2.Rtf, TextDataFormat.Rtf)
    
        Browse2.Navigate("about:blank")
        Browse2.Document.ExecCommand("Paste", False, Nothing)
    

    在此之后,Browse2.DocumentText()应该用HTML填充,就像它在较小的测试项目中一样,但我什么都没有。

    非常感谢任何建议。

0 个答案:

没有答案