Unplanned
Last Updated: 18 Sep 2025 15:03 by Emanuele
Created by: Martin
Comments: 7
Category: VirtualGrid
Type: Bug Report
3

Repro-steps:

  1. Use the code beneath.
  2. Run this form.
  3. 20 records are shown, the "AddNewRow" is shown.
  4. Select all records.
  5. Press <delete>
  6. 0 records are shown (as expected), the "AddNewRow" is invisible (unexpected).
  7. Close the program.
  8. Modify LoadTable(true) to LoadTable(false). Records will not be created..
  9. Run this form.
  10. 0 records are shown (as expected), the "AddNewRow" is invisible (unexpected).

Expected behavior:

  • Even when the dataTable or view has no rows, we should still be able to add new rows.

Observed behavior:

  • When datatable/view is empty, no new records are allowed to enter.

Please observe that Grid.UserAddedRow is not handled, but since we cannot even see the AddNewRow, it is not required for this bug.


	public partial class TestForm: Form
	{
		private readonly DataView _view;

		public TestForm()
		{
			InitializeComponent();

			_view = new DataView(LoadTable(true));
			_grid.ColumnCount = _view.Table.Columns.Count;
			_grid.RowCount = _view.Count;
			_grid.AllowAddNewRow = true;
			_grid.SelectionMode = VirtualGridSelectionMode.FullRowSelect;
		}

		static private DataTable LoadTable(bool fill)
		{
			var table = new DataTable();
			table.Columns.Add("Number", typeof(int));
			
			if (fill)
				for(int i = 0; i < 20; i++)
					table.Rows.Add(i);
			
			return table;
		}


		#region Windows Form Designer generated code

		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{
			this._grid = new Telerik.WinControls.UI.RadVirtualGrid();
			((System.ComponentModel.ISupportInitialize)(this._grid)).BeginInit();
			this.SuspendLayout();
			// 
			// _grid
			// 
			this._grid.Dock = System.Windows.Forms.DockStyle.Fill;
			this._grid.Location = new System.Drawing.Point(0, 0);
			this._grid.MultiSelect = true;
			this._grid.Name = "_grid";
			this._grid.SelectionMode = Telerik.WinControls.UI.VirtualGridSelectionMode.FullRowSelect;
			this._grid.Size = new System.Drawing.Size(800, 450);
			this._grid.TabIndex = 0;
			this._grid.CellValueNeeded += new Telerik.WinControls.UI.VirtualGridCellValueNeededEventHandler(this._grid_CellValueNeeded);
			this._grid.UserDeletedRow += new Telerik.WinControls.UI.VirtualGridRowsEventHandler(this._grid_UserDeletedRow);
			// 
			// TestForm
			// 
			this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
			this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
			this.ClientSize = new System.Drawing.Size(800, 450);
			this.Controls.Add(this._grid);
			this.Name = "TestForm";
			this.Text = "TestForm";
			((System.ComponentModel.ISupportInitialize)(this._grid)).EndInit();
			this.ResumeLayout(false);

		}

		#endregion

		private Telerik.WinControls.UI.RadVirtualGrid _grid;

		private void _grid_CellValueNeeded(object sender, Telerik.WinControls.UI.VirtualGridCellValueNeededEventArgs e)
		{
			if (e.ColumnIndex < 0)
				return;

			if (e.RowIndex < 0)
			{
				e.FieldName = _view.Table.Columns[e.ColumnIndex].ColumnName;
				if (e.RowIndex == RadVirtualGrid.HeaderRowIndex)
					e.Value = e.FieldName;
			}
			else if (e.RowIndex < _view.Count)
			{
				e.Value = _view[e.RowIndex][e.ColumnIndex];
			}
		}

		private void _grid_UserDeletedRow(object sender, Telerik.WinControls.UI.VirtualGridRowsEventArgs e)
		{
			var rowIndexes = e.RowIndices.Distinct().OrderByDescending(i => i).ToList(); // Off topic: I have seen duplicate row indexes in this row collection. And unsorted. Is that by design?
			if (rowIndexes.Count == _view.Count)
			{
				_view.Table.Rows.Clear();
			}
			else
			{
				foreach(var index in rowIndexes)
					_view[index].Delete();
			}

			_grid.RowCount = _view.Count;
		}
	}

Unplanned
Last Updated: 18 Sep 2025 11:59 by ADMIN
Created by: RafaƂ
Comments: 1
Category: GanttView
Type: Feature Request
0

Currently, there is LinkChanged event.

It would be useful if there is also LinkChanged event that allows to be canceled upon some condition.

Completed
Last Updated: 17 Sep 2025 14:26 by ADMIN
Release 2025.3.917 (Preview)
When a CommandColumn cell is focused and we try to focus an external control, the RadGridView can't lose focus. The internal code will force the control to focus the CommandColumn cell again.
Completed
Last Updated: 17 Sep 2025 14:23 by ADMIN
Release 2025.3.917 (Preview)
I have moved the mouse away, the pointer is not over an element of the NavigationView, but the SubPages remain visible. I would like it to be collapsed, and expand again when I move the mouse over the Page (the orange area).
Unplanned
Last Updated: 15 Sep 2025 13:48 by ADMIN
Created by: Steinar
Comments: 1
Category: PdfViewer
Type: Feature Request
0
 
Planned
Last Updated: 11 Sep 2025 15:01 by ADMIN
Created by: Austin
Comments: 1
Category: TreeView
Type: Feature Request
2
Implement UI Automation support
Planned
Last Updated: 11 Sep 2025 08:25 by ADMIN
Currently searching is only possible through PdfViewerNavigator.
Unplanned
Last Updated: 02 Sep 2025 14:22 by ADMIN

In this particular case, the control is in Self-Referencing binding mode. When we perform drag-and-drop operations multiple times, the application enters an invalid state and hangs. Additionally, during drag-and-drop operations, moving several nodes can lead to collapsing and hiding the parent or other nodes randomly.

Completed
Last Updated: 01 Sep 2025 10:27 by ADMIN
Release 2025.3.812 (2025 Q3)
Created by: Nadya
Comments: 2
Category: UI for WinForms
Type: Feature Request
2

Provide an AI assistant for code generation with the Telerik UI for WinForms controls. 

Such as Telerik Blazor AI Coding Assistant

Declined
Last Updated: 01 Sep 2025 10:12 by ADMIN
Created by: Jay
Comments: 2
Category: UI for WinForms
Type: Bug Report
0
System.NullReferenceException: Object reference not set to an instance of an object.
   at Telerik.Windows.Pdf.Documents.Fixed.FormatProviders.Old.Pdf.PdfElementToFixedElementTranslator.CreateFormField(PdfContentManager contentManager, FormFieldNodeOld terminalFormField)
   at Telerik.Windows.Pdf.Documents.Fixed.FormatProviders.Old.Pdf.PdfElementToFixedElementTranslator.CreateWidgetAnnotation(WidgetOld source, PdfFormatProvider provider)
   at Telerik.Windows.Pdf.Documents.Fixed.FormatProviders.Old.Pdf.PdfElementToFixedElementTranslator.CreateAnnotation(AnnotationOld source, PdfFormatProvider provider)
   at Telerik.Windows.Pdf.Documents.Fixed.FormatProviders.Pdf.PdfFormatProvider.CopyAnnotationsFromPageSource(PageOld source, AnnotationCollection annotations)
   at Telerik.Windows.Pdf.Documents.Fixed.FormatProviders.Pdf.PdfFormatProvider.LoadPageAnnotations(RadFixedPage page)
   at Telerik.Windows.Pdf.Documents.Fixed.Model.RadFixedPage.LoadAnnotations()
   at Telerik.Windows.Pdf.Documents.Fixed.Model.Internal.RadFixedPageInternal.Arrange()
   at Telerik.Windows.Pdf.Documents.Fixed.FormatProviders.Old.Pdf.PdfReader.PageContentLoader.Telerik.Windows.Pdf.Documents.Fixed.FormatProviders.Old.Pdf.PdfReader.IPageContentLoader.LoadPageContent(RadFixedPage page)
   at Telerik.Windows.Pdf.Documents.Fixed.FormatProviders.Old.Pdf.PdfReader.PagesCacheManager.BeginUsingPageContent(RadFixedPage page)
   at Telerik.WinControls.UI.RadFixedPageElement.Attach(RadFixedPage data, Object context)
   at Telerik.WinControls.UI.RadFixedPageElement..ctor(RadFixedPage page, RadPdfViewerElement owner)
   at Telerik.WinControls.UI.RadPdfViewerElement.CreatePageElement(RadFixedPage data, Object context)
   at Telerik.WinControls.UI.FixedPageElementProvider.CreateElement(RadFixedPage data, Object context)
   at Telerik.WinControls.UI.BaseVirtualizedElementProvider`1.GetElement(T data, Object context)
   at Telerik.WinControls.UI.BaseVirtualizedContainer`1.UpdateElement(Int32 position, T data)
   at Telerik.WinControls.UI.BaseVirtualizedContainer`1.MeasureElements()
   at Telerik.WinControls.PdfViewer.PdfViewerStackContainer.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.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.VirtualizedScrollPanel`2.MeasureOverride(SizeF availableSize)
   at Telerik.WinControls.UI.RadPdfViewerElement.MeasureOverride(SizeF availableSize)
   at Telerik.WinControls.RadElement.MeasureCore(SizeF availableSize)
   at Telerik.WinControls.RadElement.Measure(SizeF availableSize)
   at Telerik.WinControls.Layouts.ContextLayoutManager.UpdateLayout()
   at Telerik.WinControls.Layouts.ContextLayoutManager.UpdateLayoutCallback(ILayoutManager manager)
Unplanned
Last Updated: 25 Aug 2025 11:20 by ADMIN

Steps to reproduce:

1. Bind the grid to BindingList

2. Call BestFitColumns method in form's constructor

3. Use Fluent/Crystal theme

4. Rebind the grid by setting DataSource=null

5. Exception is thrown

Stack trace:

en Telerik.WinControls.UI.BestFitHelper.SetColumnWidth(GridViewColumn column, Single desiredWidth)
   en Telerik.WinControls.UI.BestFitHelper.BestFitColumnCore(GridViewColumn column, BestFitColumnMode mode)
   en Telerik.WinControls.UI.BestFitHelper.ProcessRequests()
   en Telerik.WinControls.UI.GridTableElement.UpdateAll()
   en Telerik.WinControls.UI.GridTableElement.UpdateViewCore(Object sender, DataViewChangedEventArgs args)
   en Telerik.WinControls.UI.GridTableElement.UpdateView(Object sender, DataViewChangedEventArgs args)
   en Telerik.WinControls.UI.GridTableElement.ProcessTemplateEvent(GridViewEvent eventData)
   en Telerik.WinControls.UI.GridTableElement.Telerik.WinControls.UI.IGridViewEventListener.ProcessEvent(GridViewEvent eventData)
   en Telerik.WinControls.UI.GridViewEventProcessEntity.ProcessCollection(GridViewEvent gridEvent, PriorityWeakReferenceList list, GridEventProcessMode processMode)
   en Telerik.WinControls.UI.GridViewEventProcessEntity.ProcessEvent(GridViewEvent gridEvent)
   en Telerik.WinControls.UI.GridViewSynchronizationService.NotifyListeners(GridViewEvent gridEvent)
   en Telerik.WinControls.UI.GridViewSynchronizationService.FlushEvents()
   en Telerik.WinControls.UI.GridViewSynchronizationService.DispatchEvent(GridViewEvent gridEvent)
   en Telerik.WinControls.UI.GridViewSynchronizationService.DispatchEvent(GridViewTemplate template, GridViewEvent eventData, Boolean postUI)
   en Telerik.WinControls.UI.GridViewTemplate.DispatchEvent(GridViewEvent gridEvent, Boolean postUI)
   en Telerik.WinControls.UI.GridViewTemplate.DispatchDataViewChangedEvent(Object sender, DataViewChangedEventArgs args)
   en Telerik.WinControls.UI.GridViewTemplate.OnViewChanged(Object sender, DataViewChangedEventArgs e)
   en Telerik.WinControls.UI.MasterGridViewTemplate.OnViewChanged(Object sender, DataViewChangedEventArgs e)
   en Telerik.WinControls.UI.GridViewTemplate.CollectionView_CollectionChanged(Object sender, NotifyCollectionChangedEventArgs e)
   en Telerik.WinControls.Data.RadCollectionView`1.OnCollectionChanged(NotifyCollectionChangedEventArgs args)
   en Telerik.WinControls.Data.RadDataView`1.RebuildData(Boolean notify)
   en Telerik.WinControls.Data.RadDataView`1.RefreshOverride()
   en Telerik.WinControls.Data.RadDataView`1.ProcessCollectionChanged(NotifyCollectionChangedEventArgs args)
   en Telerik.WinControls.Data.RadCollectionView`1.source_CollectionChanged(Object sender, NotifyCollectionChangedEventArgs e)
   en Telerik.WinControls.Data.NotifyCollectionChangedEventHandler.Invoke(Object sender, NotifyCollectionChangedEventArgs e)
   en Telerik.WinControls.Data.RadListSource`1.OnCollectionChanged(NotifyCollectionChangedEventArgs e)
   en Telerik.WinControls.Data.RadListSource`1.EndUpdate(Boolean notifyUpdates)
   en Telerik.WinControls.Data.RadListSource`1.Initialize()
   en Telerik.WinControls.Data.RadListSource`1.Bind(Object dataSource, String dataMember)
   en Telerik.WinControls.Data.RadListSource`1.set_DataSource(Object value)
   en Telerik.WinControls.UI.GridViewTemplate.set_DataSource(Object value)
   en Telerik.WinControls.UI.RadGridView.set_DataSource(Object value)

Completed
Last Updated: 25 Aug 2025 07:59 by ADMIN
Release 2025.3.812 (2025 Q3)
Users want to save the workbook via the Save ribbon button, but they want a default filename in the save dialog (not "book1.xlsx"). 
Completed
Last Updated: 25 Aug 2025 07:59 by ADMIN
Release 2025.3.812 (2025 Q3)
Created by: Luca
Comments: 1
Category: UI for WinForms
Type: Feature Request
0
At this moment, DocumenWindow has only Image property.
Completed
Last Updated: 25 Aug 2025 07:59 by ADMIN
Release 2025.3.812 (2025 Q3)
Created by: Francois
Comments: 5
Category: Map
Type: Feature Request
5
 
Completed
Last Updated: 25 Aug 2025 07:59 by ADMIN
Release 2025.3.812 (2025 Q3)
Created by: Nadya
Comments: 0
Category: GridView
Type: Feature Request
3
 Add support for UI Automation in RadGridView control.
Completed
Last Updated: 25 Aug 2025 07:59 by ADMIN
Release 2025.3.812 (2025 Q3)
Created by: Nadya
Comments: 0
Category: UI for WinForms
Type: Feature Request
2
 Currently, the EnableUIAutomation property can be set per control. It would be useful if there is an opportunity to enable/disable it globally. 
Completed
Last Updated: 25 Aug 2025 07:59 by ADMIN
Release 2025.3.812 (2025 Q3)
In this particular case, the shape/connection is hidden at runtime. When we click on the exact same spot where the items were drawn, the selection logic will detect them and select them. Hidden/Collapsed diagram items should not be selectable.
Completed
Last Updated: 25 Aug 2025 07:59 by ADMIN
Release 2025.3.812 (2025 Q3)
Scatter series vertical axis Minimum and Maximum properties are not set correctly.
Completed
Last Updated: 25 Aug 2025 07:59 by ADMIN
Release 2025.3.812 (2025 Q3)
Completed
Last Updated: 25 Aug 2025 07:59 by ADMIN
Release 2025.3.812 (2025 Q3)

The Anchor and Dock property is not relevant to the RadPopupContainer and should not be taken into account while calculating the size of the popup drop-down.

Workaround:

Avoid setting the Anchor and Dock properties of the RadPopupContainer.

1 2 3 4 5 6