How to reproduce: check the attached video Workaround: public partial class Form1 : Form { private RadButtonElement buttonHeader; private RadButtonElement buttonFooter; public Form1() { InitializeComponent(); this.buttonHeader = (RadButtonElement)this.richTextEditorRibbonBar1.GetType().GetField("buttonHeader", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(this.richTextEditorRibbonBar1); this.buttonFooter = (RadButtonElement)this.richTextEditorRibbonBar1.GetType().GetField("buttonFooter", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(this.richTextEditorRibbonBar1); this.radRichTextEditor1.RichTextBoxElement.IsInHeaderFooterEditModeChanged += RichTextBoxElement_IsInHeaderFooterEditModeChanged; } private void RichTextBoxElement_IsInHeaderFooterEditModeChanged(object sender, EventArgs e) { if (!this.radRichTextEditor1.RichTextBoxElement.IsInHeaderFooterEditMode) { this.buttonHeader.Enabled = true; this.buttonFooter.Enabled = true; } else { this.buttonHeader.Enabled = false; this.buttonFooter.Enabled = false; } } }
Workaround: private void ClearDictionaries(RadRichTextEditor editor) { var dictionaries = typeof(DocumentSpellChecker).GetField("dictionaries", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(editor.SpellChecker) as Dictionary<CultureInfo, Lazy<IWordDictionary>>; dictionaries.Clear(); var customDictionaries = typeof(DocumentSpellChecker).GetField("customDictionaries", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(editor.SpellChecker) as Dictionary<CultureInfo, ICustomWordDictionary>; customDictionaries.Clear(); }
To reproduce: please refer to the attached sample project. You will notice that the exported HTML content from the left RadRichTextEditor is imported to the right and the bullets are not the same.
To reproduce: try to hide the caret: this.radRichTextEditor1.CaretWidth = 0; Workaround: //Flow layout this.radRichTextEditor1.LayoutMode = DocumentLayoutMode.Flow; Telerik.WinControls.RichTextEditor.UI.DocumentWebLayoutPresenter webLayoutPresenter = this.radRichTextEditor1.RichTextBoxElement.ActiveEditorPresenter as Telerik.WinControls.RichTextEditor.UI.DocumentWebLayoutPresenter; webLayoutPresenter.Caret.Width = 0; //Page layout this.radRichTextEditor1.LayoutMode = DocumentLayoutMode.Paged; Telerik.WinControls.RichTextEditor.UI.DocumentPrintLayoutPresenter activeEditorPresenter1 = this.radRichTextEditor1.RichTextBoxElement.ActiveEditorPresenter as DocumentPrintLayoutPresenter; activeEditorPresenter1.Caret.Width = 0;
How to reproduce: set the page view in backstage, add a page item and set its text to be very long Workaround: use the custom theme
Currently, the document won't be imported due to an exception when decoding the base64 string image source. The expected behavior is the document to be imported and the image to be shown as a missing image.
How to reproduce: set the RadRichTextEditor.IsReadOnly property to true, focus the control, use the Ctrl + K shortcut. The InsertHyperlinkDialog will be opened. Workaround: handle the CommandExecuting event public partial class Form1 : Form { public Form1() { InitializeComponent(); this.radRichTextEditor1.IsReadOnly = true; this.radRichTextEditor1.CommandExecuting += RadRichTextEditor1_CommandExecuting; } private void RadRichTextEditor1_CommandExecuting(object sender, Telerik.WinForms.Documents.RichTextBoxCommands.CommandExecutingEventArgs e) { if (this.radRichTextEditor1.IsReadOnly && e.Command is ShowInsertHyperlinkDialogCommand) { e.Cancel = true; } } }
In certain fonts the caret is drawn on part of the last inputted character
To reproduce: run the project and maximize the form. When you enter some text you will notice that the text is cut off. Workaround: use paged layout.
To reproduce: please refer to the attached sample project and follow the steps in the gif file. Workaround: private void radRichTextEditor1_CommandExecuting(object sender, Telerik.WinForms.Documents.RichTextBoxCommands.CommandExecutingEventArgs e) { if (e.Command is ChangeIntegratedWatermarkTypeCommand && this.radRichTextEditor1.LayoutMode!= Telerik.WinForms.Documents.Model.DocumentLayoutMode.Paged) { e.Cancel = true; } }
To reproduce: var d = new RadDocument(); var s = d.GetStatisticsInfo(); Workaround: var d = new RadDocument(); if (d.Sections.Count > 0 && d.Sections.Last.Blocks.Count >0) { var s = d.GetStatisticsInfo(); }
When the document is protected, CommandExecuting is not raised when the user double clicks the header or footer area.
I added this line just before Application.Run(new MainForm()); in Word-inspired project:
RichTextBoxLocalizationProvider.CurrentProvider = RichTextBoxLocalizationProvider.FromFile(@
"AllCapsRichTextBoxStrings.xml"
);
I took RichTextBoxStrings.xml from localization page of RichTextEditor. In the xml file I converted all the text between <value> tags to uppercase, and also replaced "OK" (value of "Confirm" data element) with "AYE". I expected all the OK's in all the forms within rich text editor to be replaced, but they all remained as "Ok" (note the lower case "k" here). Well, all except Page Layout > Columns form, which did display AYE, and also References > Insert citation. So, here are the issues that I found:
To create AllCapsRichTextBoxStrings.xml, make a copy of provided resource file, open it in Notepad++ and replace all <value>([^<]*)</value> with <value>\U\1\E</value> using regular expressions, and then replace all &, < and > with &, < and >.
Right-click on header/footer usually does nothing. If we double-click them we enter their edit mode. After we close header and footer and right-click on them we get context menu as if we are still in edit mode. If we scroll out of view of header/footer, and then back in, right-click will again do nothing.
Also, separate but similar bug, in demo document's footer there is a three-column table. It is possible to resize with the mouse all the columns widths, and even the row height. Mouse will change shape, as if in edit mode. It is not necessary to enter and leave edit mode like in previous case, the error is observable from the start. But if we scope out and scope back in the changes are undone, in a way like in previous case.
In R2 2019 RichTextEditor has a new GUI element, a toggle button named Simplified Ribbon. It looks neat, and I like it, but now I have to localize it. There is a link to a strings file on page https://docs.telerik.com/devtools/winforms/controls/richtexteditor/localization , but I can't find the text "simplified ribbon" in that xml file.
My fallback plan is to download the whole Telerik source code, I'm just reminding you here to update the file. And to ask you to update the file together with Telerik update in the future.
StackTrace:
Please refer to the attached IncorrectImageResizing.gif illustrating how to reproduce the problem with the Demo application.
Workaround: feel free to resize the image via the mouse cursor.