When the caret position is inside Table and a page break is inserted, the table should be split into two tables with a page break between.
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;
}
}
}
To reproduce: - Add a word, press tab the add another word. - Export the document using HtmlFormatProvider. - Import the same document. - The tab is interpreted like 7 spaces.
To reproduce: please refer to the attached gif file
Add a custom tab in the ribbon UI and a RadDropDownListElement bound to a list of strings. The first item is selected by default. Insert a table by using the ribbon UI and try to get programmatically the RadDropDownListElement.SelectedValue/Index. It is null/-1 although the text is correct.
Workaround:
public class CustomRichTextEditorRibbonBar : RichTextEditorRibbonBar
{
protected override void CreateChildItems(RadElement parent)
{
base.CreateChildItems(parent);
FieldInfo fi = typeof(RadRibbonBar).GetField("ribbonBarElement", BindingFlags.Instance | BindingFlags.NonPublic);
RadRibbonBarElement ribbonBarElement = fi.GetValue(this) as RadRibbonBarElement;
ribbonBarElement = new CustomRadRibbonBarElement();
fi.SetValue(this, ribbonBarElement);
this.RootElement.Children.Add(ribbonBarElement);
ribbonBarElement.CommandTabSelecting +=
delegate (object sender, CommandTabSelectingEventArgs args) { OnCommandTabSelecting(args); };
ribbonBarElement.CommandTabSelected +=
delegate (object sender, CommandTabEventArgs args) { OnCommandTabSelected(args); };
ribbonBarElement.ExpandedStateChanged += delegate (object sender, EventArgs args)
{
this.OnRibbonBarExpandedStateChanged(args);
};
}
}
public class CustomRadRibbonBarElement : RadRibbonBarElement
{
protected override float GetMaximumTabContentHeight()
{
return 104;
}
}
To reproduce: - Click the AA Styles button to open the Styles dialog. - Scroll down and select the CodeBlock item - The style does not change
To reproduce:
- Click the InsertMergeFiled button before setting the data source.
- Set the data source.
- Click the button again.
- There are no items in it.
Workaround:
Friend Class MyRichTextEditorRibbonBar
Inherits RichTextEditorRibbonBar
Protected Overrides Sub dropDownButtonInsertMergeField_DropDownOpening(sender As Object, e As CancelEventArgs)
MyBase.dropDownButtonInsertMergeField_DropDownOpening(sender, e)
If Me.dropDownButtonInsertMergeField.Items.Count = 0 Then
Me.dropDownButtonInsertMergeField.Items.Add(New RadItem)
End If
End Sub
End Class
"http://" prefix is automatically added by the Insert Hyperlink Dialog when the provided URI is to local path or mapped drive, e.g. "Z:\temp". Workaround 1: Set HyperlinkPattern to something that matches file paths, e.g.: (this.radRichTextEditor1.RichTextBoxElement.InsertHyperlinkDialog as InsertHyperlinkDialog).HyperlinkPattern = ".*"; Workaround 2: Insert such paths with the "file://" prefix.
How to reproduce:
private void radButton1_Click(object sender, EventArgs e)
{
RadPrintDocument doc = new RadPrintDocument();
doc.Margins = new Margins(0, 0, 10, 10);
doc.AssociatedObject = this.radRichTextEditor1;
RadPrintPreviewDialog dialog = new RadPrintPreviewDialog();
dialog.Document = doc;
dialog.ShowDialog();
}
Workaround: apply the margins on the document loaded in the editor
private void radButton1_Click(object sender, EventArgs e)
{
RadPrintDocument doc = new RadPrintDocument();
this.radRichTextEditor1.Document.SectionDefaultPageMargin = new Telerik.WinForms.Documents.Layout.Padding(0, 0, 10, 10);
doc.AssociatedObject = this.radRichTextEditor1;
RadPrintPreviewDialog dialog = new RadPrintPreviewDialog();
dialog.Document = doc;
dialog.ShowDialog();
}
InvalidOperationException is thrown in the IsInNonEditableRange() method of RadDocument when assigning a document to RadRichTextBox, which is created through the model and contains several read-only ranges. Workaround: Call MeasureAndArrangeInDefaulSize().
This field retrieves a character through a code value specified in the field-argument. Such documents are common and are created when symbols (e.g. with font Windings through Insert -> Symbol dialog) are inserted in RTF documents in MS Word.
- There should be a formatting symbol for the character - Pressing Ctrl+Shift+Space should insert the character (standard MS Word shortcut) - Import from docx should be implemented - The symbol should be treated as a separator between words when spell-checking
The attached video shows how you can reproduce this.
When exporting to HTML, each two consequent spaces in a run are treated as . However, when a style is applied to one of the spaces, the span is split and the two spaces are not considered as a pair, therefore, the HtmlFormatProvider exports them as normal spaces. When the two spaces are the whole content of a paragraph, this paragraph is not visible when the HTML is visualized in a browser.