To reproduce:
- Change the font of the new document:
txtCustomerInstallation.Document = new RadDocument();
txtCustomerInstallation.RichTextBoxElement.ChangeFontFamily(new Telerik.WinControls.RichTextEditor.UI.FontFamily("Calibri"));
txtCustomerInstallation.RichTextBoxElement.ChangeFontSize(Unit.PointToDip(10));
txtCustomerInstallation.RichTextBoxElement.ChangeParagraphSpacingAfter(0.0);
txtCustomerInstallation.DocumentInheritsDefaultStyleSettings = true;
- Start and paste plain text.
- The font os changed to Verdana.
Workaround:
void radRichTextEditor1_CommandExecuting(object sender, CommandExecutingEventArgs e)
{
if (e.Command is PasteCommand)
{
e.Cancel = true;
PasteNewText();
}
}
public void PasteNewText()
{
DocumentFragment clipboardDocument = null;
string clipboardText = null;
bool clipboardContainsData = false;
if (ClipboardEx.ContainsDocument(null))
{
clipboardDocument = ClipboardEx.GetDocument();
clipboardContainsData = true;
}
else if (ClipboardEx.ContainsText(null))
{
clipboardText = ClipboardEx.GetText(null);
clipboardContainsData = true;
}
if (!clipboardContainsData)
{
return;
}
if (clipboardDocument != null)
{
RadDocument doc = new RadDocument();
RadDocumentEditor editor = new RadDocumentEditor(doc);
editor.InsertFragment(clipboardDocument);
doc.Selection.SelectAll();
editor.ChangeFontFamily(new Telerik.WinControls.RichTextEditor.UI.FontFamily("Calibri"));
DocumentFragment fragmentFromSelection = doc.Selection.CopySelectedDocumentElements();
this.radRichTextEditor1.RichTextBoxElement.ActiveDocumentEditor.InsertFragment(fragmentFromSelection);
}
else if (!string.IsNullOrEmpty(clipboardText))
{
this.radRichTextEditor1.RichTextBoxElement.ActiveDocumentEditor.Insert(clipboardText);
}
}