Last Updated: 16 Jan 2020 09:17 by ADMIN
Created by: Chuck
Comments: 1
Category: RibbonBar
Type: Feature Request

Just a request to add in a RadFontDropDownListElement item to the RadRibbonBarGroup item list in the RadRibbonBar.

I am bypassing this by manually loading in the system fonts to a RadDropDownListElement but I could see the ease and appeal of having it already available. 

Last Updated: 13 Jan 2020 14:05 by ADMIN
When you drag a RadDateTimePicker from the Toolbox and drop it onto the form, the TabStop property is false by default. If you change it in the Properties grid to true and save the form, try to open the form designer again. As a result the TabStop property is set to false as if no changes have been performed.
Last Updated: 18 Dec 2019 12:46 by ADMIN
Created by: Smisha
Comments: 1
Category: UI for WinForms
Type: Bug Report

I have tried this code. It removes the item from list if we enter a letter first, then key down. But if we select an item then just press key down same item will be shown in the list.


Last Updated: 04 Dec 2019 14:58 by ADMIN
Created by: luai
Comments: 4
Category: UI for WinForms
Type: Feature Request

I am working on a Windows Forms Application that load and print PDF document then unload that document  and load new one, but when i call unloadDocument() no new document was loaded :

                   RadPdfViewer rViewer = new RadPdfViewer();
                    rViewer.DocumentLoaded += RViewer_DocumentLoaded;
                    if (rViewer.IsLoaded)
                    { rViewer.UnloadDocument(); }

after unloadde the document i cannot load new PDF doccument?

Last Updated: 21 Nov 2019 07:28 by ADMIN
Created by: Jorge
Comments: 1
Category: PdfViewer
Type: Feature Request
Implement the import of documents containing Type 3 fonts.
Last Updated: 15 Nov 2019 13:47 by ADMIN
Created by: tstephens
Comments: 5
Category: DropDownList
Type: Bug Report

I am using Visual Studio 2019, version 16.3.1 and when using the DropDownList and running it in the VS debugger, the DropDownList get populated properly, but when you click the down arrow for the first time, the list drops down and you can scroll with the mouse wheel, but it will not allow you to select anything with the mouse.

If you click the down arrow to close the list, and click it again to reopen the list, it works properly - selecting the item chosen.

I have tried numerous property setting in attempt to narrow down if any of the properties set are causing it, but have been unsuccessful.

I have created several test projects with only 1 form and only the dropdownlist on the form and this happens reliably in every project I have tested within Visual Studio.

If I build the executable and run it directly, the DropDownList works properly as expected.

The DropDownList version is listed as 2019.3.917.40 in Visual Studio 2019 16.3.1.

I opened the project in JetBrains Rider on the same machine and everything works fine.

Last Updated: 14 Nov 2019 16:26 by ADMIN
Created by: Jorge
Comments: 1
Category: PdfViewer
Type: Bug Report


I'm using PDFViewer to display several documents in my application. Most of them are shown the right way, but there are others that appear "empty", or with some graphic elements but no text. I can see them perfectly with external third party viewers.

I've just downloaded and installed 2019.3.1022, but this issue remains.

I send some samples of PDF that are not showing.

Thank you in advance for your help.

Last Updated: 12 Nov 2019 14:55 by ADMIN
Last Updated: 12 Nov 2019 14:52 by ADMIN

Using a custom control using the Telerik Presentation Framework, I am receiving a NullException inside the GridCheckBoxHeaderCellElement during the GridViewElement's data load.

The custom control construction follows an example I found somewhere (reference is lost to me at this point):

ControlContainingGridView inherits from RadControl

CreateChildItems creates and adds ControlContainingGridViewElement


ControlContainingGridViewElement inherits from RadElement

CreateChildItems creates and adds some layout controls AND a GridViewElement


public partial class ControlContainingGridView : RadControl {
        public ControlContainingGridView() {
            this.TextChanged += ControlContainingGridView_TextChanged;

        private void ControlContainingGridView_TextChanged(object sender, EventArgs e) {
            controlContainingGridViewElement.Text = this.Text;

        private ControlContainingGridViewElement controlContainingGridViewElement = null;

        protected override void CreateChildItems(RadElement parent) {
            controlContainingGridViewElement = new ControlContainingGridViewElement();

        public object DataSource {
            get {
                return controlContainingGridViewElement.GridView.Template.DataSource;
            set {
                try {
                    controlContainingGridViewElement.GridView.Template.DataSource = value;
                } catch (Exception ex) {

        internal void SetupColumns(Action<MasterGridViewTemplate> setupColumns) {
            controlContainingGridViewElement.GridView.Template.AutoGenerateColumns = false;


    public class ControlContainingGridViewElement : RadElement {

        private TextPrimitive textPrimitive = null;
        private RadButtonElement addButton = null;
        private RadButtonElement deleteButton = null;
        private RadGridViewElement gridViewElement = null;

        public RadGridViewElement GridView { get { return gridViewElement; } }

        public bool ShowAddButton { get { return addButton.Visibility == ElementVisibility.Visible; } set { addButton.Visibility = value ? ElementVisibility.Visible : ElementVisibility.Collapsed; } }
        public bool ShowDeleteButton { get { return deleteButton.Visibility == ElementVisibility.Visible; } set { deleteButton.Visibility = value ? ElementVisibility.Visible : ElementVisibility.Collapsed; } }

        public string Text { get { return textPrimitive.Text; } set { textPrimitive.Text = value; } }

        protected override void CreateChildElements() {
            DockLayoutPanel dlp = new DockLayoutPanel();
            dlp.StretchHorizontally = true;
            dlp.StretchHorizontally = true;
            dlp.LastChildFill = true;

            DockLayoutPanel dlpBar = new DockLayoutPanel();
            dlpBar.StretchHorizontally = true;
            DockLayoutPanel.SetDock(dlpBar, Dock.Top);

            var imagePrimitive = new ImagePrimitive();
            DockLayoutPanel.SetDock(imagePrimitive, Dock.Left);

            textPrimitive = new TextPrimitive();
            DockLayoutPanel.SetDock(textPrimitive, Dock.Left);

            var slp = new StackLayoutPanel();
            DockLayoutPanel.SetDock(slp, Dock.Right);

            var addButton = new RadButtonElement {
                Text = "Add",
                MaxSize = new Size() { Height = 20 }
            var deleteButton = new RadButtonElement {
                Text = "Del",
                MaxSize = new Size() { Height = 20 }



            gridViewElement = new RadGridViewElement {
                StretchHorizontally = true,
                StretchVertically = true
            gridViewElement.Template.AutoSizeColumnsMode = GridViewAutoSizeColumnsMode.Fill;
            gridViewElement.Template.AllowAddNewRow = false;
            gridViewElement.Template.AllowDeleteRow = false;
            gridViewElement.Template.AllowDragToGroup = false;
            gridViewElement.ShowGroupPanel = false;
            gridViewElement.ShowGroupPanelScrollbars = false;





During Form load, I programmatically add columns and provide a binding source


private List<SampleModel> sampleModels = new List<SampleModel>();
        private BindingSource sampleModelsBinding = new BindingSource();

        private void RadForm1_Load(object sender, EventArgs e) {

            sampleModels.Add(new SampleModel() {
                When = DateTime.Parse("1980-04-23"),
                SomeText = "Purple Bananas",
                IsTrue = true
            sampleModels.Add(new SampleModel() {
                When = DateTime.Parse("2002-07-20"),
                SomeText = "Ball & Chain",
                IsTrue = false
            sampleModelsBinding.DataSource = sampleModels;

            controlContainingGridView.SetupColumns((grid) => {
                grid.AddDateTimeColumn(nameof(SampleModel.When), "When");
                grid.AddTextBoxColumn(nameof(SampleModel.SomeText), "Some Text");
                grid.AddCheckBoxColumn(nameof(SampleModel.IsTrue), "Is True");

            controlContainingGridView.DataSource = sampleModelsBinding;



Inclusion of the CheckBox column results in the following error:

Exception thrown: 'System.NullReferenceException' in Telerik.WinControls.GridView.dll

System.NullReferenceException: Object reference not set to an instance of an object.
   at Telerik.WinControls.UI.GridCheckBoxHeaderCellElement.Attach(GridViewColumn data, Object context)
   at Telerik.WinControls.UI.BaseVirtualizedContainer`1.InsertElement(Int32 position, IVirtualizedElement`1 element, T data)
   at Telerik.WinControls.UI.BaseVirtualizedContainer`1.UpdateElement(Int32 position, T data)
   at Telerik.WinControls.UI.BaseVirtualizedContainer`1.MeasureElements()
   at Telerik.WinControls.UI.BaseVirtualizedContainer`1.MeasureOverride(SizeF availableSize)
   at Telerik.WinControls.RadElement.MeasureCore(SizeF availableSize)
   at Telerik.WinControls.RadElement.Measure(SizeF availableSize)
   at Telerik.WinControls.UI.GridVirtualizedRowElement.MeasureElements(SizeF availableSize, SizeF clientSize, Padding borderThickness)
   at Telerik.WinControls.UI.LightVisualElement.MeasureOverride(SizeF availableSize)
   at Telerik.WinControls.UI.GridRowElement.MeasureOverride(SizeF availableSize)
   at Telerik.WinControls.RadElement.MeasureCore(SizeF availableSize)
   at Telerik.WinControls.RadElement.Measure(SizeF availableSize)
   at Telerik.WinControls.UI.VirtualizedStackContainer`1.MeasureElementCore(RadElement element, SizeF availableSize)
   at Telerik.WinControls.UI.ScrollableRowsContainerElement.MeasureElementCore(RadElement element, SizeF availableSize)
   at Telerik.WinControls.UI.VirtualizedStackContainer`1.MeasureElement(IVirtualizedElement`1 element)
   at Telerik.WinControls.UI.PinnedRowsContainerElement.MeasureElement(IVirtualizedElement`1 element)
   at Telerik.WinControls.UI.BaseVirtualizedContainer`1.MeasureElements()
   at Telerik.WinControls.UI.BaseVirtualizedContainer`1.MeasureOverride(SizeF availableSize)
   at Telerik.WinControls.UI.ScrollableRowsContainerElement.MeasureOverride(SizeF availableSize)
   at Telerik.WinControls.RadElement.MeasureCore(SizeF availableSize)
   at Telerik.WinControls.RadElement.Measure(SizeF availableSize)
   at Telerik.WinControls.UI.RowsContainerElement.MeasureOverride(SizeF availableSize)
   at Telerik.WinControls.RadElement.MeasureCore(SizeF availableSize)
   at Telerik.WinControls.RadElement.Measure(SizeF availableSize)
   at Telerik.WinControls.UI.ScrollViewElement`1.MeasureViewElement(SizeF availableSize)
   at Telerik.WinControls.UI.ScrollViewElement`1.MeasureView(SizeF availableSize)
   at Telerik.WinControls.UI.ScrollViewElement`1.MeasureOverride(SizeF availableSize)
   at Telerik.WinControls.UI.GridTableElement.MeasureOverride(SizeF availableSize)
   at Telerik.WinControls.RadElement.MeasureCore(SizeF availableSize)
   at Telerik.WinControls.RadElement.Measure(SizeF availableSize)
   at Telerik.WinControls.Layouts.DockLayoutPanel.MeasureOverride(SizeF constraint)
   at Telerik.WinControls.RadElement.MeasureCore(SizeF availableSize)
   at Telerik.WinControls.RadElement.Measure(SizeF availableSize)
   at Telerik.WinControls.Layouts.ContextLayoutManager.UpdateLayout()
   at Telerik.WinControls.UI.GridVisibilityHelper.EnsureRowVisible(GridViewRowInfo rowInfo)
   at Telerik.WinControls.UI.GridTableElement.EnsureRowVisible(GridViewRowInfo rowInfo)
   at Telerik.WinControls.UI.GridTableElement.EnsureCellVisible(GridViewRowInfo rowInfo, GridViewColumn column)
   at Telerik.WinControls.UI.GridTableElement.UpdateViewCore(Object sender, DataViewChangedEventArgs args)
   at Telerik.WinControls.UI.GridTableElement.UpdateView(Object sender, DataViewChangedEventArgs args)
   at Telerik.WinControls.UI.GridTableElement.ProcessTemplateEvent(GridViewEvent eventData)
   at Telerik.WinControls.UI.GridTableElement.Telerik.WinControls.UI.IGridViewEventListener.ProcessEvent(GridViewEvent eventData)
   at Telerik.WinControls.UI.GridViewEventProcessEntity.ProcessCollection(GridViewEvent gridEvent, PriorityWeakReferenceList list, GridEventProcessMode processMode)
   at Telerik.WinControls.UI.GridViewEventProcessEntity.ProcessEvent(GridViewEvent gridEvent)
   at Telerik.WinControls.UI.GridViewSynchronizationService.NotifyListeners(GridViewEvent gridEvent)
   at Telerik.WinControls.UI.GridViewSynchronizationService.FlushEvents()
   at Telerik.WinControls.UI.GridViewSynchronizationService.DispatchEvent(GridViewEvent gridEvent)
   at Telerik.WinControls.UI.GridViewSynchronizationService.RaiseCurrentChanged(GridViewTemplate template, GridViewRowInfo row, GridViewColumn column, Boolean user)
   at Telerik.WinControls.UI.GridViewTemplate.CollectionView_CurrentChanged(Object sender, EventArgs e)
   at System.EventHandler.Invoke(Object sender, EventArgs e)
   at Telerik.WinControls.Data.RadCollectionView`1.OnCurrentChanged(EventArgs args)
   at Telerik.WinControls.Data.RadCollectionView`1.SetCurrentPositionCore(Int32 newPosition, Boolean forceNotify, CurrentChangeReason reason)
   at Telerik.WinControls.Data.RadListSource`1.InitializeCurrentItem()
   at Telerik.WinControls.Data.RadListSource`1.Initialize()
   at Telerik.WinControls.Data.RadListSource`1.Bind(Object dataSource, String dataMember)
   at Telerik.WinControls.Data.RadListSource`1.set_DataSource(Object value)
   at Telerik.WinControls.UI.GridViewTemplate.set_DataSource(Object value)
   at BugReproduction.ControlContainingGridView.set_DataSource(Object value) in ...\BugReproduction\BugReproduction\ControlContainingGridView.cs:line 42

Last Updated: 18 Oct 2019 12:41 by ADMIN

To reproduce:

  doc.Pages[0].CropBox = new Rect(150, 150, doc.Pages[0].Size.Width - 30, doc.Pages[0].Size.Height - 30);

Last Updated: 27 Sep 2019 10:43 by ADMIN
Created by: Telerik Admin
Comments: 5
Category: GridView
Type: Bug Report

Following to the workaroud (flag IsSearchAsync) provided (, we discovered two issues :

1) the behavior of the grid is changed while using IsSearchAsync as true or false (see 2018-08-01_1849_DragDrop_behavior_with_IsSearchAsync.swf video attached). When set to true, the line found by the searchbox is automatically reselected. When the flag is set to false, it's not the case.

2) while playing with drag&drop, after some time the grid became unstable (see 2018-08-01_1847_-_dragdrop_issue_with_IsAsyncSearch.swf video attached). You can see that at the beginning, the D&D works fine. At 0:20 I can't select any line, and when I try to D&D, it drops always the same customer. At 0:40 you can see that even the SearchBox is broken and the progressbar is looping forever
Last Updated: 13 Sep 2019 07:11 by ADMIN
To reproduce: please refer to the attached sample project and gif file


            GridViewSpreadExport spreadExporter = new GridViewSpreadExport(this.radGridView1);
            spreadExporter.ExportFormat = SpreadExportFormat.Pdf;
            spreadExporter.ExportVisualSettings = true;
            SpreadExportRenderer exportRenderer = new SpreadExportRenderer();
            spreadExporter.RunExport(exportFile, exportRenderer);
Last Updated: 16 Aug 2019 15:22 by ADMIN
Created by: Stephen
Comments: 5
Category: RichTextEditor
Type: Feature Request

Dear Sir/Madam,


I have a docx document and want to display it in flow layoutmode. It works normally except it cannot show header at the beginning of the document and footer at the end of the document. Please help.

My code is similar as follows (Rte is the RadRichTextEditor control):


DocumentFormatProviderBase provider = new DocxFormatProvider();


Rte.Document = provider.Import([Docx in byte array]);

Rte.RichTextBoxElement.BackColor = Color.White;

Telerik.WinControls.RichTextEditor.UI.DocumentWebLayoutPresenter presenter = (Telerik.WinControls.RichTextEditor.UI.DocumentWebLayoutPresenter)rte.RichTextBoxElement.ActiveEditorPresenter;

presenter.BackColor = Color.White;

presenter.Margin = new Padding(20);



Last Updated: 06 Aug 2019 13:07 by ADMIN
Use attached to reproduce.

RadTextBox tb = new RadTextBox();

tb.Font = new Font(Font.Name, 12F, FontStyle.Bold);

tb.MaxLength = 200;
tb.Name = "textBox1";
tb.Text = "<Required>";
tb.Location = new Point(49, 7);
var pixels = tb.Font.SizeInPoints * 96 / 72;
tb.TextBoxElement.TextBoxItem.HostedControl.MinimumSize = new Size(0, (int)pixels + 6);

Last Updated: 25 Jul 2019 12:30 by ADMIN

You can use the following code snippet and follow the steps from the provided gif file:

        public RadForm1()

            DataTable dt = new DataTable();
            for (int i = 0; i < 100; i++)

            this.radMultiColumnComboBox1.DisplayMember = "Id";
            this.radMultiColumnComboBox1.ValueMember = "Id";
            this.radMultiColumnComboBox1.DataSource = dt;
            this.radMultiColumnComboBox1.SelectedIndex = -1;

            this.radMultiColumnComboBox1.SelectedIndexChanged += radMultiColumnComboBox1_SelectedIndexChanged;

        private void radMultiColumnComboBox1_SelectedIndexChanged(object sender, EventArgs e)
            RadMessageBox.Show("You just selected index " + this.radMultiColumnComboBox1.SelectedIndex);

Last Updated: 07 Jun 2019 11:48 by ADMIN
Created by: Hemesh
Comments: 1
Category: UI for WinForms
Type: Bug Report


I have already used your ItemFormatting event in my code and implemented it the same way you have provided.

In my code, i have created 7-8 messages and fixed the first msg's timestamp to "6/6/2019 11:53:08 AM" and the remaining messages with timestamp of 2 minutes more than this time. Whenever the event is triggered i wrote a code which compares the timestamp of my message with this timestamp "6/6/2019 11:53:08 AM". Conditionally only the first message falls in this condition and i paint it red, which works well for first time (On load) and then when i scroll my chat, the event unnecessarily paints the remaining msgs too, which should not happen.

I am attaching my .cs file with designer please refer to it, and resolve this asap. Looking forward to your response.


Last Updated: 05 Jun 2019 12:28 by ADMIN
To reproduce:
- Add bindingnavigator and data entry bound to a single binding source.
- Change one of the default editors to drop down list which is also bound to a datasource.
- Synchronize the selected value in the binding source CurrentChanged event.
- Press the move to the last item button.
- You will notice that the value is not displayed properly (displayed is the value member not the display member)

void radBindingNavigator1MoveLastItem_Click(object sender, EventArgs e)
Last Updated: 05 Jun 2019 12:21 by ADMIN
Last Updated: 16 May 2019 10:45 by ADMIN
Please run the attached sample project and follow the steps from the attached gif file to replicate the visual glitch.
Last Updated: 16 May 2019 08:17 by ADMIN
1. Create a new project and setup hierarchy
2. Add a large number of rows as child rows to the last row at first level
3. Run the project and try to expand the last row
1 2 3 4 5 6