To reproduce: - Add RichTextEditorRibbonBar to a form and open it upon button click several times. - You will notice that the memory is constantly increasing. Workaround: protected override void Dispose(bool disposing) { if (disposing && (components != null)) { components.Dispose(); } FieldInfo f1 = this.richTextEditorRibbonBar1.GetType().GetField("tabTableStyle", BindingFlags.NonPublic| BindingFlags.Instance); RichTextEditorRibbonTab tab1 = f1.GetValue(richTextEditorRibbonBar1) as RichTextEditorRibbonTab; tab1.Dispose(); FieldInfo f2 = this.richTextEditorRibbonBar1.GetType().GetField("tabTableLayout", BindingFlags.NonPublic | BindingFlags.Instance); RichTextEditorRibbonTab tab2 = f2.GetValue(richTextEditorRibbonBar1) as RichTextEditorRibbonTab; tab2.Dispose(); FieldInfo f3 = this.richTextEditorRibbonBar1.GetType().GetField("tabHeaderFooter", BindingFlags.NonPublic | BindingFlags.Instance); RichTextEditorRibbonTab tab3 = f3.GetValue(richTextEditorRibbonBar1) as RichTextEditorRibbonTab; tab3.Dispose(); base.Dispose(disposing); }
Implement support for content controls (a.k.a. Structured document tags), which will allow inserting editing controls in the document: - Rich Text - Plain Text - Check Box - Combo Box - Drop-down list - Date picker
Add similar functionality as MS Word.
To reproduce: - Start the demo application - Type some text and try to make it bold with the bold button from the ribbon. Workaround: void richTextEditorRibbonBar1_MouseDown(object sender, MouseEventArgs e) { radRichTextEditor1.RichTextBoxElement.SelectionMiniToolBar.Hide(); }
If you populate the document with more than one section as shown below: Section Section1 = radRichTextEditor.Document.Sections(0); Paragraph Paragraph1 = new Paragraph(); Span Span1 = new Span("Thank you for choosing Telerik"); Section1.Blocks.Add(Paragraph1); Section Section2 = new Section(); Paragraph Paragraph2 = new Paragraph(); Paragraph2.Inlines.Add(image); Section2.Blocks.Add(Paragraph2); radRichTextEditor..Document.Sections.Add(Section2); then mark as selected the space after the first span, then try to type a character, a NullReferenceException will be thrown. WORKAROUND: class MyInputBehavior : RichTextEditor.RichTextEditorInputBehavior { public MyInputBehavior(RadRichTextBox editor) : base(editor) { } public override void InsertText(string text) { if (this.RichTextBox.IsReadOnly) { return; } Telerik.WinForms.Documents.UI.CaretTextInputHandler handler = null; DocumentPrintLayoutPresenter printLayout = this.RichTextBox.ActiveEditorPresenter as DocumentPrintLayoutPresenter; if (printLayout != null) { DocumentPagePresenter pagePresenter = printLayout.GetFocusedPresenter(); if (pagePresenter == null) { pagePresenter = ((Canvas)printLayout.Content).Children[0] as DocumentPagePresenter; } handler = pagePresenter != null ? pagePresenter.CaretTextInputHandler : null; } DocumentWebLayoutPresenter webLayout = this.RichTextBox.ActiveEditorPresenter as DocumentWebLayoutPresenter; if (webLayout != null) { handler = webLayout.CaretTextInputHandler; } if (handler != null) { handler.HandleTextInsertedWithoutIme(this.RichTextBox.ActiveEditor.Document, text); } } } radRichTextEditor.InputHandler = New MyInputBehavior(radRichTextEditor.RichTextBoxElement)
To reproduce: - Add some full pages to the editor. - Remove all margin from the print settings and document settings. - PrintPreview the document. - Seth the print preview dialog zoom to 100% and compare the documents. - You will notice that the print document's content is smaller.
To reproduce Write a word in an RightToLeft language and then type "." You will notice that the dot is moved to the end of the word.
One should be able to change the document while the Find/Replace dialog is open.
Please refer to the attached gif file.
To reproduce: 1. Create a UserControl. 2. Drag from the Toolbox a RichTextEditorRibbonBar and drop it onto the UserControl. 3. Use the following code: Sub New() InitializeComponent() Me.RichTextEditorRibbonBar1.CloseButton = False Me.RichTextEditorRibbonBar1.MinimizeButton = False Me.RichTextEditorRibbonBar1.MaximizeButton = False End Sub You will notice that the header is cut off. Workaround: in order to hide the system buttons, use the following code: Me.RichTextEditorRibbonBar1.RibbonBarElement.RibbonCaption.SystemButtons.Visibility = Telerik.WinControls.ElementVisibility.Hidden
To reproduce: 1.Add some text to RadRichTextEditor. 2.Copy an image from a Word document and paste it to the RadRichTextEditor. 3.Export the document content with RtfFormatProvider. When you try to open the exported .rtf file via WordPad, you will notice that the image is not loaded. Please refer to the attached files created by MS Word and RadRichTextEditor.
To reproduce: Import the attached sample.html in RadRichTextEditor. Afterwards, export the content by using HtmlFormatProvider. You will notice that the page breaks are not exported and if you import the exported file, you will see the difference. Please refer to the attached screenshot.
To reproduce: - Add RadRichTextEditor and RichTextEditorRibbonBar to a form. - Start the application and add some text. - Change the font size with the ribbon bar. - Select the text and open the mini toolbar.
To reproduce: use the following code snippet. The attached screenshot illustrates the missing border. Note: It seems that the RadRichTextEditor remains in Portrait orientation although the RadPrintDocument.DefaultPageSettings.Landscape property is set to true. This issue can be replicated if you specify the PreferredWidth property in pixels in such a way that the table fits in A4 format (wider side). The A4 size print measures 21.0 x 29.7cm. private void Form1_Load(object sender, EventArgs e) { RadDocument document = new RadDocument(); document.LayoutMode = Telerik.WinForms.Documents.Model.DocumentLayoutMode.Paged; Section sec = new Section(); sec.PageOrientation = PageOrientation.Landscape; sec.PageSize = PaperTypeConverter.ToSize(PaperTypes.A4); document.Sections.Add(sec); Paragraph para = new Paragraph(); Table table = new Table(); Border b = new Border(Telerik.WinForms.Documents.Model.BorderStyle.Single, System.Drawing.Color.Black); TableBorders tb = new TableBorders(b); table.Borders = tb; sec.Blocks.Add(table); //first row TableRow tableRow = new TableRow(); table.AddRow(tableRow); //cell 0,0 TableCell cell = new TableCell(); cell.PreferredWidth = new TableWidthUnit(TableWidthUnitType.Percent ,20); tableRow.Cells.Add(cell); cell.Blocks.Add(para); Span span = new Span("Cell 0,0"); para.Inlines.Add(span); //cell 0,1 cell = new TableCell(); cell.PreferredWidth = new TableWidthUnit(TableWidthUnitType.Percent ,80); tableRow.Cells.Add(cell); //second row tableRow = new TableRow(); table.AddRow(tableRow); //cell 1,0 cell = new TableCell(); cell.PreferredWidth = new TableWidthUnit(TableWidthUnitType.Percent ,20); tableRow.Cells.Add(cell); para = new Paragraph(); cell.Blocks.Add(para); span = new Span("Cell 1,0"); para.Inlines.Add(span); //cell 1,1 cell = new TableCell(); cell.PreferredWidth = new TableWidthUnit(TableWidthUnitType.Percent ,80); tableRow.Cells.Add(cell); radRichTextEditor1.Document = document; Telerik.WinControls.UI.RadPrintDocument printDocument = new Telerik.WinControls.UI.RadPrintDocument(); printDocument.AssociatedObject = this.radRichTextEditor1; printDocument.Margins = new System.Drawing.Printing.Margins(0, 0, 0, 0); printDocument.DefaultPageSettings.Landscape = true; System.Drawing.Printing.PaperSize paperSize = new System.Drawing.Printing.PaperSize(); paperSize.RawKind = 9; printDocument.DefaultPageSettings.PaperSize = paperSize; this.radRichTextEditor1.Print(true, printDocument); }