How to get HTML tags to appear as HTML and not as plain text in a Rich Text Box
Learn how to write code to render HTML in a Rich Text Box.
You have added a Rich Text Box control to an InfoPath form and filled it with the information from the HTML file, but it does not render the tags, just prints them as plain text. You want to render the HTML.
If you want HTML tags to render as HTML and not as plain text in a Rich Text Box control on an InfoPath form, you have to add those HTML tags as child nodes to the node of the Rich Text Box or set the InnerXml property of the Rich Text Box control.
Any HTML tags that you add as child nodes must have the following namespace: http://www.w3.org/1999/xhtml.
Important: If you set the Value property of a Rich Text Box control instead of add HTML tags as child nodes or set the InnerXml property of the Rich Text Box control, the text will appear as plain text.
If you have a Rich Text Box named rtfField and you want to add the following HTML code to the Rich Text Box:
<h2>Header Text</h2><p>This is some paragraph text.</p>
You could use the following C# code:
MainDataSource.CreateNavigator().SelectSingleNode("//my:rtfField", NamespaceManager).AppendChild("<h2 xmlns=\"http://www.w3.org/1999/xhtml\">Header Text</h2><p xmlns=\"http://www.w3.org/1999/xhtml\">This is some paragraph text.</p>");
For an example on how to use the InnerXml property to set the contents of a Rich Text box control in InfoPath, see How to programmatically get or set the XHTML code of a Rich Text field in InfoPath 2007.
Copyright: This article may not be used on web sites (whether personal or otherwise), copied, disseminated, altered, printed, published, broadcasted, or reproduced in any way without an expressed written consent of S.Y.M. Wong-A-Ton. The techniques demonstrated in this article may be used within any Microsoft InfoPath project. This article is provided without any warranties. Copyright for this article is non-transferrable and remains with the author, S.Y.M. Wong-A-Ton.
Related InfoPath Articles:
- How to programmatically get or set the XHTML code of a Rich Text field in InfoPath 2007
- Programmatically add lines of text to a Rich Text Box field on an InfoPath form using C# code
- Converting browser-enabled forms to PDF or HTML in SharePoint
- How to display images in a repeating table in an InfoPath browser form using a Rich Text Box control
- How do I copy contents from one Rich Text field to another?