簡體   English   中英

WPF RichTextBox RTF更新文本?

[英]WPF RichTextBox RTF update text?

我有一個WPF RichTextBox ,其格式設置為Rtf 我有一種動態添加超鏈接的方法。

但是,當通過添加所述超鏈接來編輯RichTextBox文本時, Rtf輸出是不正確的,因為超鏈接被附加到了已經完整的Rtf文檔的末尾。

我設法將RichTextBox Rtf文本格式化為Text ,這解決了RichTextBox的文本顯示問題,但是顯然我的超鏈接丟失了為純文本。

有什么方法可以獲取Rtf RichTextBox文本並將其“重新加載”到新的Flow Document以便獲得正確的Rtf輸出?

我在傳遞Rtf字符串( RichTextBox.Text )的地方有這種方法,它為我提供了正確的Rtf但是我在RichTextBox文本中又獲得了所有Rtf標簽...

  public void RebuildRtfForRichTextBox(string richTextBoxText)
    {
        FlowDocument doc = new FlowDocument(new Paragraph(new Run(richTextBoxText)));

        richTextBoxArticleBody.Document = doc;
    }

如前所述,RichTextBox具有一個名為“ Document”的屬性。 獲取此屬性將返回FlowDocument。 如果閱讀此內容 ,則可以看到FlowDocuments由塊組成。 實際上,您可以使用“塊”屬性在流文檔的塊上進行迭代。

運用

 flowDoc.Blocks.InsertBefore(flowDoc.Blocks.FirstBlock, p);

您將能夠在另一個之前插入一個塊。 請訪問此處以了解如何添加段落或其他類型的塊。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM