Unplanned
Last Updated: 12 Oct 2020 14:07 by ADMIN

RadRichTextEditor renders the text with a little bigger characters spacing than RadRichTextBox and MS Word.

Note: this text spacing problem can be observed in other Telerik controls as well.

Unplanned
Last Updated: 05 Apr 2017 14:36 by ADMIN
How to reproduce:
1. Run the Mail Merge example (QSF) 

2. Select the image inside the document and move it to another position
Unplanned
Last Updated: 26 Dec 2022 10:29 by ADMIN

Use the code below.

1. Click the first button to insert a link.

2. Click inside the link to move the cursor.

3. Click the second button to insert the yellow rectangle

4. Click the third button to export the HTML content.

Actual result: StackOverflow exception occurs

        private void radButton1_Click(object sender, EventArgs e)
        {
            HyperlinkInfo info = new HyperlinkInfo()
            {
                NavigateUri = "http://www.google.com",
                Target = HyperlinkTargets.Blank,
                IsAnchor = false
            };
            this.radRichTextEditor1.InsertHyperlink(info, "www.google.com");
        }

        private void radButton2_Click(object sender, EventArgs e)
        {
            LightVisualElement button = new LightVisualElement();
            button.Text = "My Button";
            button.DrawFill = true;
            button.BackColor = System.Drawing.Color.Yellow;
            button.GradientStyle = Telerik.WinControls.GradientStyles.Solid;

            Section section = new Section();
            Paragraph paragraph = new Paragraph();
            InlineUIContainer container = new InlineUIContainer();
            RadElementUIContainer radContainer = new RadElementUIContainer(button);
            container.UiElement = radContainer;
            container.Height = 25;
            container.Width = 70;
            paragraph.Inlines.Add(container);
            section.Blocks.Add(paragraph);
            RadDocument doc = new RadDocument();
            doc.Sections.Add(section);
            radRichTextEditor1.InsertFragment(new DocumentFragment(doc));
        }

        private void radButton3_Click(object sender, EventArgs e)
        {
            Telerik.WinForms.Documents.Model.RadDocument document = radRichTextEditor1.Document;

            Telerik.WinForms.Documents.FormatProviders.Html.HtmlFormatProvider provider = new Telerik.WinForms.Documents.FormatProviders.Html.HtmlFormatProvider();

            provider.ExportSettings.InlineUIContainerExporting += ExportSettings_InlineUIContainerExporting;

            provider.ExportSettings.DocumentExportLevel = Telerik.WinForms.Documents.FormatProviders.Html.DocumentExportLevel.Fragment;
            provider.ExportSettings.ExportFontStylesAsTags = true;
            provider.ExportSettings.SpanExportMode = Telerik.WinForms.Documents.FormatProviders.Html.SpanExportMode.DefaultBehavior;
            string htmlValue = provider.Export(document);
            webBrowser1.DocumentText = htmlValue;
        }

        private void ExportSettings_InlineUIContainerExporting(object sender, Telerik.WinForms.Documents.FormatProviders.Html.InlineUIContainerExportingEventArgs e)
        { 
        }

Unplanned
Last Updated: 30 Mar 2016 10:58 by ADMIN
Import the following code:
<ol>
  <li>Coffee</li>
  <li></li>
  <li>Milk</li>
</ol
Unplanned
Last Updated: 30 Mar 2016 11:23 by ADMIN
To reproduce:
- Add two tabs in a PageView
- Add RadRichTextEditor in the second tab
- Select some text to show the mini toolbar 
- Select the first page.

Workaround
void radPageView1_SelectedPageChanged(object sender, EventArgs e)
{
    if (radPageViewPage2.IsContentVisible == false)
    {
        radRichTextEditor1.RichTextBoxElement.SelectionMiniToolBar.Hide();
    }
}

Unplanned
Last Updated: 06 May 2016 14:13 by ADMIN
To reproduce:
- insert a fragmet from another RichtextEditor like this:
private void Button_Click(object sender, RoutedEventArgs e)
{
radRichTextBox.Document.Sections.Clear();
radRichTextBox.Document.Sections.Add(new Section());

radRichTextBox.Document.CaretPosition.MoveToLastPositionInDocument(); 
radRichTextBox.DocumentEditor.InsertParagraph();
radRichTextBox.DocumentEditor.InsertFragment(new DocumentFragment(radRichTextEditor1.Document));
radRichTextBox.DocumentEditor.InsertParagraph();
}

Workaround:
There is no point of resetting the section in such way. Nevertheless, you can avoid the exception by using one of the following methods:

radRichTextBox.Document.MeasureAndArrangeInDefaultSize();
radRichTextBox.UpdateEditorLayout();
Unplanned
Last Updated: 30 Mar 2016 10:56 by Svetlin
Workaround:

public class MyInputBehavior : InputBehavior
{
    public MyInputBehavior(DocumentView view)
        : base(view)
    {
  
    }
  
    public override bool ProcessKeyPress(System.Windows.Forms.KeyPressEventArgs e)
    {
        // TO DO: You code here
        e.KeyChar = char.ToUpper(e.KeyChar);
        return true;
        // By commenting the base call you are supresing the default logic
        //return base.ProcessKeyPress(e);
    }
}

Then you should replace the default input behavior by using the following code snippet:
this.richTextBox.DocumentView.InputBehavior = new MyInputBehavior(this.richTextBox.DocumentView);
Unplanned
Last Updated: 30 Mar 2016 11:07 by ADMIN
RadRichTextBox large txt documents (20000 rows)are loaded very slowly.
Unplanned
Last Updated: 28 Feb 2018 12:56 by ADMIN
Unplanned
Last Updated: 19 Jun 2017 10:40 by Bill
To reproduce: add some text to RadRichTextEditor and set the Enabled property to false. You will notice that the text gets bold and blurry. 

Workaround: instead of disabling RadRichTextEditor, use the ReadOnly property.
Unplanned
Last Updated: 21 Nov 2017 11:40 by ADMIN
Unplanned
Last Updated: 06 May 2022 05:01 by Tejas
One is not able to set the font size of span to less than 2
Unplanned
Last Updated: 30 Mar 2016 11:00 by Svetlin
The HtmlFormatProvider does not import correctly html content of div tags and css styles.
Unplanned
Last Updated: 30 Mar 2016 11:10 by ADMIN
To reproduce:
string text = "<p style=\"font-family:Calibri; font-size:15pt;\">Hi,<br/><br/><br/><br/>Regards<br/></p>";

HtmlFormatProvider provider = new HtmlFormatProvider();
RadDocument document = new RadDocument();
document = provider.Import(text);

radRichTextBox1.Document = document;

Click on an empty line and you will see that the font is different.
Unplanned
Last Updated: 17 Apr 2024 14:44 by ADMIN
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.
Unplanned
Last Updated: 08 Mar 2017 07:58 by ADMIN
How to reproduce:
public partial class Form1 : Form
{
    RadRichTextBox tb1;
    RadRichTextBox tb2;
    private bool shouldFocus = false;

    public Form1()
    {
        InitializeComponent();

        tb1 = new RadRichTextBox();
        this.Controls.Add(tb1);

        tb2 = new RadRichTextBox();
        tb2.Location = new Point(200, 0);
        this.Controls.Add(tb2);

        this.Load += Form1_Load;
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        StyleDefinition style = new StyleDefinition();
        tb1.IsReadOnly = true;
        tb1.Document.Insert("text 1", style);

        tb2.Document.Insert("text 2", style);
        tb2.IsReadOnly = true;
    }

    private void radButton1_Click(object sender, EventArgs e)
    {
        tb1.IsReadOnly = false;
        tb2.IsReadOnly = false;
        tb1.Focus();
    }
}

Workaround:
public partial class Form1 : Form
{
    RadRichTextBox tb1;
    RadRichTextBox tb2;
    private bool shouldFocus = false;

    public Form1()
    {
        InitializeComponent();

        tb1 = new RadRichTextBox();
        tb1.GotFocus += tb1_GotFocus;
        tb1.LostFocus += tb1_LostFocus;
        this.Controls.Add(tb1);

        tb2 = new RadRichTextBox();
        tb2.Location = new Point(200, 0);
        tb2.GotFocus += tb2_GotFocus;
        tb2.LostFocus += tb2_LostFocus;
        this.Controls.Add(tb2);

        this.Load += Form1_Load;
    }

    private void tb2_LostFocus(object sender, EventArgs e)
    {
        shouldFocus = false;
        tb2.IsReadOnly = true;
    }

    private void tb2_GotFocus(object sender, EventArgs e)
    {
        if (shouldFocus)
        {
            tb2.IsReadOnly = false;
        }
    }

    private void tb1_LostFocus(object sender, EventArgs e)
    {
        tb1.IsReadOnly = true;
    }

    private void tb1_GotFocus(object sender, EventArgs e)
    {
        if (shouldFocus)
        {
            tb1.IsReadOnly = false;
        }
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        StyleDefinition style = new StyleDefinition();
        tb1.IsReadOnly = true;
        tb1.Document.Insert("text 1", style);

        tb2.Document.Insert("text 2", style);
        tb2.IsReadOnly = true;
    }

    private void radButton1_Click(object sender, EventArgs e)
    {
        if (shouldFocus)
        {
            tb2.Focus();
        }
        else
        {
            shouldFocus = true;
            tb1.Focus();
        }
    }
}
Unplanned
Last Updated: 30 Mar 2016 12:20 by ADMIN
To reproduce:
Use the following code and then select some text:
private void radButton1_Click(object sender, EventArgs e)
{
    TxtFormatProvider txtProvider = new TxtFormatProvider();
    RichTextEditor.Document = txtProvider.Import(sampleText);

    RichTextEditor.Document.LineSpacingType = LineSpacingType.Exact;
    RichTextEditor.Document.LineSpacing =10;

    DocumentPosition startPosition = RichTextEditor.Document.CaretPosition;
    DocumentPosition endPosition = new DocumentPosition(startPosition);
    startPosition.MoveToStartOfDocumentElement(RichTextEditor.Document);
    endPosition.MoveToEndOfDocumentElement(RichTextEditor.Document);

    RichTextEditor.Document.Selection.Clear();
    RichTextEditor.Document.Selection.AddSelectionStart(startPosition);
    RichTextEditor.Document.Selection.AddSelectionEnd(endPosition);

    RichTextEditor.RichTextBoxElement.ChangeFontFamily(new Telerik.WinControls.RichTextEditor.UI.FontFamily("Segoe UI"));
    RichTextEditor.RichTextBoxElement.ChangeFontSize(Unit.PointToDip(10));
    RichTextEditor.Document.Selection.Clear();
}

Workaround:
    RichTextEditor.Document.LineSpacingType = LineSpacingType.Auto;
    RichTextEditor.Document.LineSpacing =.5;
1 2 3 4 5 6