Completed
Last Updated: 11 Nov 2026 15:31 by ADMIN
Release Q4 2026 (November)
ADMIN
Created by: Dess | Tech Support Engineer, Principal
Comments: 0
Category: GridView
Type: Bug Report
1
To reproduce:

1. Add a RadGridView with a GridViewMultiComboBoxColumn. Enable the auto filter functionality for this column and add an appropriate FilterDescriptor to the RadMultiColumnComboBoxElement.
2. Using the keyboard arrows only (no mouse), navigate to the GridViewMultiComboBoxColumn.
3. Type "ba" by using the keyboard. The "b" is lost and only the "a" gets to the filter. I expect the filter to show "ba".

Workaround: use custom row behavior

public Form1()
{
    InitializeComponent();
    //register the custom row  behavior
    BaseGridBehavior gridBehavior = radGridView1.GridBehavior as BaseGridBehavior;
    gridBehavior.UnregisterBehavior(typeof(GridViewDataRowInfo));
    gridBehavior.RegisterBehavior(typeof(GridViewDataRowInfo), new CustomGridDataRowBehavior());
}

public class CustomGridDataRowBehavior : GridDataRowBehavior
{
    protected override bool ProcessAlphaNumericKey(KeyPressEventArgs keys)
    {
        bool result = base.ProcessAlphaNumericKey(keys);
        if (this.IsInEditMode &&
            (this.BeginEditMode == RadGridViewBeginEditMode.BeginEditOnKeystroke ||
             this.BeginEditMode == RadGridViewBeginEditMode.BeginEditOnKeystrokeOrF2))
        {
            if (this.GridViewElement.ActiveEditor is RadMultiColumnComboBoxElement)
            {
                this.GridViewElement.ActiveEditor.Value = keys.KeyChar;
                if (this.GridViewElement.IsInEditMode)
                {
                    RadMultiColumnComboBoxElement mccb = (RadMultiColumnComboBoxElement)this.GridViewElement.ActiveEditor;
                    RadTextBoxItem textBoxItem = mccb.TextBoxElement.TextBoxItem;
                    textBoxItem.Clear();
                    textBoxItem.Text =  keys.KeyChar.ToString();
                    textBoxItem.SelectionStart = 1;
                    textBoxItem.SelectionLength = 0;
                }

                return true;
            }
        }
        return result;
    }
}
Completed
Last Updated: 11 Nov 2026 15:31 by ADMIN
Release Q4 2026

To reproduce: 

CultureInfo culture = new CultureInfo("en-US");
culture.DateTimeFormat.FirstDayOfWeek = DayOfWeek.Monday;
culture.DateTimeFormat.CalendarWeekRule = CalendarWeekRule.FirstFourDayWeek;
this.radCalendar1.ShowRowHeaders = true;
this.radCalendar1.Culture = culture;

 

Completed
Last Updated: 11 Nov 2026 15:30 by ADMIN
Release Q4 2026

On 125% dpi:

 However, if you close the list and open it again, the list has the correct height (the gap is gone).

Completed
Last Updated: 11 Nov 2026 15:30 by ADMIN
Release Q4 2026
ADMIN
Created by: Dimitar
Comments: 0
Category: Form
Type: Bug Report
1
To reproduce:
-Set RTL via the insane:
RadMessageBox.Instance.RightToLeft = RightToLeft.Yes;

- You will notice that layout is not changed when the messagebox is shown.

Worlaround:
- Use the RadMessageBox show method with the following parameters:

RadMessageBox.Show(this, "test", "caption", MessageBoxButtons.OKCancel, icon, MessageBoxDefaultButton.Button1, RightToLeft.Yes);
Completed
Last Updated: 11 Nov 2026 15:29 by ADMIN
Release Q4 2026
Completed
Last Updated: 11 Nov 2026 15:29 by ADMIN
Release Q4 2026
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);
Completed
Last Updated: 11 Nov 2026 15:29 by ADMIN
Release Q4 2026
Created by: Jim
Comments: 0
Category: Forms/Dialogs/Templates
Type: Bug Report
4

Set one of the monitors to use 125% DPI scaling. Start the attached project on a monitor with 100% DPI scaling - the form is expected to be with size 400,400. Move the form to the monitor with 125% DPI scaling. You are expecting the form's size to be 500,500, but it is 507,521. Please refer to the screenshots.

Workaround:

Override the RadForm.ScaleControl method as follows:

    Protected Overrides Sub ScaleControl(factor As SizeF, specified As BoundsSpecified)
        Dim initialSize As Size = Me.Size
        MyBase.ScaleControl(factor, specified)
        Me.Size = TelerikDpiHelper.ScaleSize(initialSize, factor)
    End Sub

Completed
Last Updated: 11 Nov 2026 15:29 by ADMIN
Release Q4 2026

In this scenario, the RadMap control is placed inside a RadDocking pane. The exception is raised when you click and hold the mouse on a drawn polygon. Then the mouse is released outside of the Form. When closing the tab holding the map, an exception is thrown.

Completed
Last Updated: 19 Oct 2026 13:12 by ADMIN

Expose a way to disable the Spell Checking Complete dialog:

Completed
Last Updated: 08 Oct 2026 05:56 by ADMIN
Release 2026.3.1007
Created by: Jan Brandenburger
Comments: 5
Category: PdfViewer
Type: Feature Request
17
An implementation of JPXDecoder should be created to allow the decompression of data encoded using the wavelet-based JPEG2000 standard.
Completed
Last Updated: 07 Oct 2026 13:43 by ADMIN
Release 2026.3.1007

I was trying to move the NewRow to the bottom of the RadVirtualGrid. This is also supported by its big brother RadGridView. I have now learned that this is not supported by RadVirtualGrid.

Hereby my request: Please support this!

I've created a Harmony patch (which works for me); it might help you if you decide to support it:

	static class MoveNewRowToBottom
	{
		[HarmonyPatch(typeof(VirtualGridTableElement), "InvalidatePinnedRows")]
		static class VirtualGridTableElement_InvalidatePinnedRows
		{
			static private bool _isInvalidating;

			static private bool Prefix(VirtualGridTableElement __instance)
			{
				if (_isInvalidating)
					return false;
				_isInvalidating = true;

				__instance.ViewElement.TopPinnedRows.DisposeChildren();
				__instance.ViewElement.BottomPinnedRows.DisposeChildren();

				var viewInfo = __instance.ViewInfo;
				var rowsViewState = __instance.RowsViewState;
				var topPinnedItems = rowsViewState.TopPinnedItems;
				var bottomPinnedItems = rowsViewState.BottomPinnedItems;

				if (viewInfo.ShowFilterRow)
					if (!topPinnedItems.Contains(RadVirtualGrid.FilterRowIndex) && !bottomPinnedItems.Contains(RadVirtualGrid.FilterRowIndex))
						rowsViewState.SetPinPosition(RadVirtualGrid.FilterRowIndex, PinnedRowPosition.Top);

				if (viewInfo.ShowNewRow)
					if (!topPinnedItems.Contains(RadVirtualGrid.NewRowIndex) && !bottomPinnedItems.Contains(RadVirtualGrid.NewRowIndex))
						rowsViewState.SetPinPosition(RadVirtualGrid.NewRowIndex, PinnedRowPosition.Top);

				if (viewInfo.ShowHeaderRow)
					if (!topPinnedItems.Contains(RadVirtualGrid.HeaderRowIndex) && !bottomPinnedItems.Contains(RadVirtualGrid.HeaderRowIndex))
						rowsViewState.SetPinPosition(RadVirtualGrid.HeaderRowIndex, PinnedRowPosition.Top);

				var elementProvider = __instance.RowScroller.ElementProvider;

				var topPinnedRows = __instance.ViewElement.TopPinnedRows;
				foreach (int topPinnedRow in topPinnedItems.SortTopRowIndexes())
				{
					VirtualGridRowElement pinnedRow = (VirtualGridRowElement)elementProvider.GetElement(topPinnedRow, null);
					topPinnedRows.Children.Add(pinnedRow);
					pinnedRow.Attach(topPinnedRow, null);
				}

				var bottomPinnedRows = __instance.ViewElement.BottomPinnedRows;
				foreach (int bottomPinnedRow in bottomPinnedItems.SortBottomRowIndexes())
				{
					VirtualGridRowElement pinnedRow = (VirtualGridRowElement)elementProvider.GetElement(bottomPinnedRow, null);
					bottomPinnedRows.Children.Add(pinnedRow);
					pinnedRow.Attach(bottomPinnedRow, null);
				}

				_isInvalidating = false;
				return false;
            }
		}

		static private IEnumerable<int> SortTopRowIndexes(this ReadOnlyCollection<int> topRowIndexes)
		{
			var specialRowIndex = topRowIndexes.Where(index => index < 0).ToList();
			if (specialRowIndex.Contains(RadVirtualGrid.HeaderRowIndex))
				yield return RadVirtualGrid.HeaderRowIndex;
			if (specialRowIndex.Contains(RadVirtualGrid.NewRowIndex))
				yield return RadVirtualGrid.NewRowIndex;
			if (specialRowIndex.Contains(RadVirtualGrid.FilterRowIndex))
				yield return RadVirtualGrid.FilterRowIndex;
			foreach (var index in topRowIndexes.Where(index => index >= 0))
				yield return index;
		}

		static private IEnumerable<int> SortBottomRowIndexes(this ReadOnlyCollection<int> bottomRowIndexes)
		{
			foreach (var index in bottomRowIndexes.Where(index => index >= 0))
				yield return index;
			var specialRowIndex = bottomRowIndexes.Where(index => index < 0).ToList();
			if (specialRowIndex.Contains(RadVirtualGrid.FilterRowIndex))
				yield return RadVirtualGrid.FilterRowIndex;
			if (specialRowIndex.Contains(RadVirtualGrid.NewRowIndex))
				yield return RadVirtualGrid.NewRowIndex;
			if (specialRowIndex.Contains(RadVirtualGrid.HeaderRowIndex))
				yield return RadVirtualGrid.HeaderRowIndex;
		}
	}

Completed
Last Updated: 07 Oct 2026 13:42 by ADMIN
Release 2026.3.1007
Created by: erwin
Comments: 3
Category: GridView
Type: Bug Report
1

Hi,

when I select the column chooser multiple times via context menu, the column chooser dialog scales multiple times.

Reproduced here with the Telerik sample application. 150 % dpi scaling.

Regards

Erwin

Completed
Last Updated: 07 Oct 2026 13:42 by ADMIN
Release 2026.3.1007

In the ControlDefault theme, editor cell text is misaligned while editing a cell.

Completed
Last Updated: 07 Oct 2026 13:42 by ADMIN
Release 2026.3.1007
How to reproduce:
1. Run the Mail Merge example (QSF) 

2. Select the image inside the document and move it to another position
Completed
Last Updated: 07 Oct 2026 13:42 by ADMIN
Release 2026.3.1007
 Missing styles in inherited RadGridView controls when ThemeClassName is not overridden in old themes.
Completed
Last Updated: 07 Oct 2026 13:42 by ADMIN
Release 2026.3.1007
The specified format in the DisplayFormat attribute should be considered when automatically generating the GridViewDateTimeColumn.

public RadForm1()
{
    InitializeComponent();

    List<Item> items = new List<Item>();
    for (int i = 0; i < 5; i++)
    {
        items.Add(new Item(DateTime.Now.AddDays(i)));
    }

    this.radGridView1.DataSource = items;
    this.radGridView1.AutoSizeColumnsMode = Telerik.WinControls.UI.GridViewAutoSizeColumnsMode.Fill;
}

public class Item
{
    [System.ComponentModel.DisplayName("My Date")]
    [System.ComponentModel.DataAnnotations.DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}")]
    public DateTime Date { get; set; }

    public Item(DateTime date)
    {
        this.Date = date;
    }
}
Completed
Last Updated: 07 Oct 2026 13:41 by ADMIN
Release 2026.3.1007
Created by: Micah
Comments: 1
Category: GridView
Type: Feature Request
2
Add support for data annotations.
Completed
Last Updated: 07 Oct 2026 07:15 by ADMIN
ADMIN
Created by: Dess | Tech Support Engineer, Principal
Comments: 3
Category:
Type: Feature Request
0
This item is migrated to the Telerik Document Processing portal: 
http://feedback.telerik.com/Project/184/Feedback/Details/190130 
Please use the new item for commenting, voting and subscribing instead of this one.
Completed
Last Updated: 17 Aug 2026 14:34 by ADMIN
Release 2026.3.812 (2026 Q3)
Created by: Jonathan
Comments: 5
Category: Form
Type: Bug Report
4
************** Exception Text **************
System.InvalidOperationException: Invoke or BeginInvoke cannot be called on a control until the window handle has been created.
   at System.Windows.Forms.Control.MarshaledInvoke(Control caller, Delegate method, Object[] args, Boolean synchronous)
   at System.Windows.Forms.Control.Invoke(Delegate method, Object[] args)
   at System.Windows.Forms.Control.Invoke(Delegate method)
   at Telerik.WinControls.UIAutomation.RadControlBaseRootUIAutomationProvider`1.get_BoundingRectangle()
   at Telerik.WinControls.UIAutomation.Window.RadFormUIAutomationProvider.Form_Resize(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnResize(EventArgs e)
   at System.Windows.Forms.Form.OnResize(EventArgs e)
   at System.Windows.Forms.Control.OnSizeChanged(EventArgs e)
   at System.Windows.Forms.Control.UpdateBounds(Int32 x, Int32 y, Int32 width, Int32 height, Int32 clientWidth, Int32 clientHeight)
   at System.Windows.Forms.Control.UpdateBounds(Int32 x, Int32 y, Int32 width, Int32 height)
   at System.Windows.Forms.Control.SetBoundsCore(Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified)
   at System.Windows.Forms.Form.SetBoundsCore(Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified)
   at Telerik.WinControls.UI.RadFormControlBase.SetBoundsCore(Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified)
   at System.Windows.Forms.Control.SetBounds(Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified)
   at System.Windows.Forms.Control.set_Size(Size value)
   at Telerik.WinControls.RadMessageBoxForm.SetSizeAndLocations()
   at Telerik.WinControls.RadMessageBoxForm.SetLabelTextAndSize(String text)
   at Telerik.WinControls.RadMessageBoxForm.set_MessageText(String value)
   at Telerik.WinControls.RadMessageBox.ShowCore(IWin32Window owner, String text, String caption, MessageBoxButtons buttons, Bitmap icon, MessageBoxDefaultButton defaultButton, RightToLeft rightToLeft, String detailsText)
   at dummyReader.FormMain.radButtonLogin_Click(Object sender, EventArgs e)
   at System.EventHandler.Invoke(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at Telerik.WinControls.RadControl.OnClick(EventArgs e)
   at Telerik.WinControls.UI.RadButtonBase.buttonElement_Click(Object sender, EventArgs e)
   at Telerik.WinControls.RadElement.OnClick(EventArgs e)
   at Telerik.WinControls.UI.RadButtonItem.OnClick(EventArgs e)
   at Telerik.WinControls.UI.RadButtonElement.OnClick(EventArgs e)
   at Telerik.WinControls.RadElement.DoClick(EventArgs e)
   at Telerik.WinControls.RadElement.RaiseBubbleEvent(RadElement sender, RoutedEventArgs args)
   at Telerik.WinControls.RadItem.RaiseBubbleEvent(RadElement sender, RoutedEventArgs args)
   at Telerik.WinControls.RadElement.RaiseRoutedEvent(RadElement sender, RoutedEventArgs args)
   at Telerik.WinControls.RadElement.DoMouseUp(MouseEventArgs e)
   at Telerik.WinControls.ComponentInputBehavior.OnMouseUp(MouseEventArgs e)
   at Telerik.WinControls.RadControl.OnMouseUp(MouseEventArgs e)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at Telerik.WinControls.RadControl.WndProc(Message& m)
   at Telerik.WinControls.UI.RadButton.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Completed
Last Updated: 13 Aug 2026 09:34 by ADMIN
Release 2026.3.812 (2026 Q3)
Created by: Robert
Comments: 1
Category: AIPrompt
Type: Feature Request
1
Add a LocalizationProvider for the strings used in the control. 
1 2 3 4 5 6