Set partially bold text
There is no way how to set default text value formatted in InfoPath, but we can do it in a code. In following example I have one field of RichText type
Here is a code, how to insert partially bold text
using Microsoft.Office.InfoPath;
using System;
using System.Xml;
using System.Xml.XPath;
namespace Form1
{
public partial class FormCode
{
public void InternalStartup()
{
//ok, plain text
//XNode("/my:myFields/my:RichTextField").SetValue("Hello World."); //ok
//renders tags
//XNode("/my:myFields/my:RichTextField").SetValue("<strong xmlns='https://www.w3.org/1999/xhtml'>Lukas </strong> born <strong xmlns='https://www.w3.org/1999/xhtml'>8.8.1979.</strong>");
//renders formatted text
XNode("/my:myFields/my:RichTextField").InnerXml = "<strong xmlns='https://www.w3.org/1999/xhtml'>Lukas </strong> born <strong xmlns='https://www.w3.org/1999/xhtml'>8.8.1979.</strong>";//renders formatted text
//throws exception
//XNode("/my:myFields/my:RichTextField").InnerXml = "<strong>LLukas </strong> born <strong>8.8.1979.</strong>";//throws exception
}
private XPathNavigator XNode(string xpath)
{
XPathNavigator node = DataSources[0].CreateNavigator().SelectSingleNode(xpath, NamespaceManager);
return node;
}
}
}