Hello everyone,
Here are the highlights of the new online resources we published this week from 10 Nov 2025 to 17 Nov 2025:
Article: https://docs.telerik.com/devtools/winforms/knowledge-base/add-license-key-in-add-in-project
Summary: This article explains how to add the Telerik UI for WinForms license key in an add-in project (e.g., VSTO/COM) to avoid runtime licensing errors. It shows where to register the key during add-in startup and how to embed the license file as an Embedded Resource so the license is applied before any Telerik controls are instantiated.
Article: https://docs.telerik.com/devtools/winforms/controls/pdfviewer/features/ai-summarization
Summary: RadPdfViewer for WinForms supports AI summarization of PDF content, allowing you to generate summaries for the entire document or the currently selected text. You configure an OpenAI or Azure OpenAI provider (API key and model), enable the built-in summarization UI/commands, and customize prompt templates to control the output for your use case.
Article: https://docs.telerik.com/devtools/winforms/knowledge-base/calendar-add-custom-space-footer
Summary: Learn how to add a custom footer area to RadCalendar in Telerik UI for WinForms by extending the control and injecting a LightVisualElement into its element tree to reserve space at the bottom. The article shows how to set a fixed height, align the footer, and update layout so the footer persists across theme and view changes, letting you host custom content (labels, buttons) beneath the calendar.
Article: https://docs.telerik.com/devtools/winforms/knowledge-base/chat-intercept-html-links
Summary: This article shows how to intercept and handle HTML anchor links inside Telerik UI for WinForms RadChat messages by using the MessageFormatting event to access the message’s markup text element and subscribing to its LinkClicked/HyperlinkClicked event. It demonstrates capturing the clicked URL and executing custom logic (for example, open in a browser or cancel navigation) so you can control link behavior per message.
Article: https://docs.telerik.com/devtools/winforms/knowledge-base/chat-resize-wrap-text-cardaction
Summary: This article shows how to make RadChat CardAction text wrap in Telerik UI for WinForms when the control is resized. You implement a custom ChatElementFactory that returns a CardAction element with TextWrap enabled and width-aware measuring (e.g., updating MaxSize on SizeChanged), so long labels break across lines and the card layout reflows correctly.
Article: https://docs.telerik.com/devtools/winforms/knowledge-base/datetimepicker-customizing-footer-panel
Summary: This article shows how to customize the footer panel of the popup RadCalendar used by the Telerik WinForms RadDateTimePicker. You’ll access the calendar’s footer element when the drop-down opens, hide or rename the default Today/Clear buttons, add custom RadButtonElements, wire Click handlers to set the picker’s Value, and close the popup programmatically.
Article: https://docs.telerik.com/devtools/winforms/knowledge-base/grid-custom-filtering-self-referencing-hierarchy
Summary: This article shows how to implement custom filtering in Telerik WinForms RadGridView when using a self-referencing hierarchy (Id/ParentId). You will handle GridViewTemplate.CustomFiltering to evaluate matches across levels, keep parent rows visible when any child satisfies the filter (and optionally the reverse), and preserve the hierarchical structure while applying FilterDescriptors.
Article: https://docs.telerik.com/devtools/winforms/knowledge-base/gridview-snap-one-row-per-scroll
Summary: Learn how to make RadGridView (Telerik UI for WinForms) snap the viewport to full rows, scrolling exactly one row per mouse wheel action. The article shows intercepting MouseWheel to suppress the default pixel-based scroll and using TableElement.RowScroller APIs (optionally aligning VScrollBar.SmallChange to the row height) to implement discrete, row-based scrolling.
Article: https://docs.telerik.com/devtools/winforms/controls/navigationview/kb-related-articles
Summary: This page indexes Knowledge Base articles for the Telerik UI for WinForms NavigationView control. Use it to quickly locate how-to and troubleshooting guidance for configuration, customization, data binding, item population, styling, selection, and event handling.
Article: https://docs.telerik.com/devtools/winforms/ai-coding-assistant/mcp-server-as-nuget
Summary: This article shows you how to add and configure the MCP Server as a NuGet package in a Telerik UI for WinForms project to enable the AI Coding Assistant. You install the package, set up your LLM provider (OpenAI or Azure OpenAI), wire up the server and tools, and initialize it in your app so the assistant can access your workspace and files.
Feel free to check them out and share your thoughts!
The Telerik Team

Hi
I refer to the aritcle "How to Change PageViewMode for the Nested Levels in RadGridView - Telerik UI for WinForms"
I have a setting implemented that is like in the article.
It is working but has a flaw:
When an entry of the second tier is expanded and I then collapse the corresponding entry in the first tier and re-expand it, I get an NullReferenceException coming out of Telerik code:
System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt. bei Telerik.WinControls.UI.RowsContainerElement.UpdateMergeCells(GridCellElement cellElement) bei Telerik.WinControls.UI.RowsContainerElement.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.RadElement.ArrangeCore(RectangleF finalRect) bei Telerik.WinControls.RadElement.Arrange(RectangleF finalRect) bei Telerik.WinControls.UI.ScrollViewElement`1.ArrangeViewElement(RectangleF viewElementRect) bei Telerik.WinControls.UI.ScrollViewElement`1.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.RadElement.ArrangeCore(RectangleF finalRect) bei Telerik.WinControls.RadElement.Arrange(RectangleF finalRect) bei Telerik.WinControls.UI.RadPageViewElementBase.ArrangeChildren(SizeF finalSize) bei Telerik.WinControls.UI.RadPageViewElementBase.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.RadElement.ArrangeCore(RectangleF finalRect) bei Telerik.WinControls.RadElement.Arrange(RectangleF finalRect) bei Telerik.WinControls.UI.RadPageViewExplorerBarElement.ArrangeContent(RectangleF clientRect) bei Telerik.WinControls.UI.RadPageViewExplorerBarElement.PerformArrange(RectangleF clientRect) bei Telerik.WinControls.UI.RadPageViewElement.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.UI.RadPageViewExplorerBarElement.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.RadElement.ArrangeCore(RectangleF finalRect) bei Telerik.WinControls.RadElement.Arrange(RectangleF finalRect) bei Telerik.WinControls.UI.LightVisualElement.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.RadElement.ArrangeCore(RectangleF finalRect) bei Telerik.WinControls.RadElement.Arrange(RectangleF finalRect) bei Telerik.WinControls.UI.GridDetailViewRowElement.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.RadElement.ArrangeCore(RectangleF finalRect) bei Telerik.WinControls.RadElement.Arrange(RectangleF finalRect) bei Telerik.WinControls.UI.VirtualizedStackContainer`1.ArrangeElementCore(RadElement element, SizeF finalSize, RectangleF arrangeRect) bei Telerik.WinControls.UI.VirtualizedStackContainer`1.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.UI.ScrollableRowsContainerElement.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.RadElement.ArrangeCore(RectangleF finalRect) bei Telerik.WinControls.RadElement.Arrange(RectangleF finalRect) bei Telerik.WinControls.UI.RowsContainerElement.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.RadElement.ArrangeCore(RectangleF finalRect) bei Telerik.WinControls.RadElement.Arrange(RectangleF finalRect) bei Telerik.WinControls.UI.ScrollViewElement`1.ArrangeViewElement(RectangleF viewElementRect) bei Telerik.WinControls.UI.ScrollViewElement`1.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.RadElement.ArrangeCore(RectangleF finalRect) bei Telerik.WinControls.RadElement.Arrange(RectangleF finalRect) bei Telerik.WinControls.UI.RadPageViewElementBase.ArrangeChildren(SizeF finalSize) bei Telerik.WinControls.UI.RadPageViewElementBase.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.RadElement.ArrangeCore(RectangleF finalRect) bei Telerik.WinControls.RadElement.Arrange(RectangleF finalRect) bei Telerik.WinControls.UI.RadPageViewExplorerBarElement.ArrangeContent(RectangleF clientRect) bei Telerik.WinControls.UI.RadPageViewExplorerBarElement.PerformArrange(RectangleF clientRect) bei Telerik.WinControls.UI.RadPageViewElement.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.UI.RadPageViewExplorerBarElement.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.RadElement.ArrangeCore(RectangleF finalRect) bei Telerik.WinControls.RadElement.Arrange(RectangleF finalRect) bei Telerik.WinControls.UI.LightVisualElement.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.RadElement.ArrangeCore(RectangleF finalRect) bei Telerik.WinControls.RadElement.Arrange(RectangleF finalRect) bei Telerik.WinControls.UI.GridDetailViewRowElement.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.RadElement.ArrangeCore(RectangleF finalRect) bei Telerik.WinControls.RadElement.Arrange(RectangleF finalRect) bei Telerik.WinControls.UI.VirtualizedStackContainer`1.ArrangeElementCore(RadElement element, SizeF finalSize, RectangleF arrangeRect) bei Telerik.WinControls.UI.VirtualizedStackContainer`1.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.UI.ScrollableRowsContainerElement.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.RadElement.ArrangeCore(RectangleF finalRect) bei Telerik.WinControls.RadElement.Arrange(RectangleF finalRect) bei Telerik.WinControls.UI.RowsContainerElement.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.RadElement.ArrangeCore(RectangleF finalRect) bei Telerik.WinControls.RadElement.Arrange(RectangleF finalRect) bei Telerik.WinControls.UI.ScrollViewElement`1.ArrangeViewElement(RectangleF viewElementRect) bei Telerik.WinControls.UI.ScrollViewElement`1.ArrangeOverride(SizeF finalSize) bei Telerik.WinControls.RadElement.ArrangeCore(RectangleF finalRect) bei Telerik.WinControls.RadElement.Arrange(RectangleF finalRect) bei Telerik.WinControls.Layouts.ContextLayoutManager.UpdateLayout() bei Telerik.WinControls.UI.GridTableElement.UpdateOnRowExpandedCore(GridViewRowInfo row) bei Telerik.WinControls.UI.GridTableElement.UpdateOnRowExpanded(GridViewRowInfo row) bei Telerik.WinControls.UI.GridTableElement.UpdateOnRowPropertyChanged(GridViewRowInfo row, GridPropertyChangedEventArgs e) bei Telerik.WinControls.UI.GridTableElement.ProcessRowEvent(GridViewRowInfo row, GridViewEvent eventData) bei Telerik.WinControls.UI.GridTableElement.Telerik.WinControls.UI.IGridViewEventListener.ProcessEvent(GridViewEvent eventData) bei Telerik.WinControls.UI.GridViewEventProcessEntity.ProcessCollection(GridViewEvent gridEvent, PriorityWeakReferenceList list, GridEventProcessMode processMode) bei Telerik.WinControls.UI.GridViewEventProcessEntity.ProcessEvent(GridViewEvent gridEvent) bei Telerik.WinControls.UI.GridViewSynchronizationService.NotifyListeners(GridViewEvent gridEvent) bei Telerik.WinControls.UI.GridViewSynchronizationService.FlushEvents() bei Telerik.WinControls.UI.GridViewSynchronizationService.DispatchEvent(GridViewEvent gridEvent) bei Telerik.WinControls.UI.GridViewSynchronizationService.DispatchEvent(GridViewTemplate template, GridViewEvent eventData, Boolean postUI) bei Telerik.WinControls.UI.GridViewRowInfo.DispatchEvent(KnownEvents id, GridEventType type, GridEventDispatchMode dispatchMode, Object originator, Object[] arguments) bei Telerik.WinControls.UI.GridViewRowInfo.OnPropertyChanged(PropertyChangedEventArgs args) bei Telerik.WinControls.UI.GridViewDataRowInfo.OnPropertyChanged(PropertyChangedEventArgs e) bei Telerik.WinControls.UI.GridViewHierarchyRowInfo.OnPropertyChanged(PropertyChangedEventArgs e) bei Telerik.WinControls.UI.GridViewRowInfo.SetBooleanProperty(String propertyName, Int32 propertyKey, Boolean value) bei Telerik.WinControls.UI.GridViewRowInfo.set_IsExpanded(Boolean value) bei Telerik.WinControls.UI.GridGroupExpanderCellElement.expander_RadPropertyChanged(Object sender, RadPropertyChangedEventArgs e) bei Telerik.WinControls.RadPropertyChangedEventHandler.Invoke(Object sender, RadPropertyChangedEventArgs e) bei Telerik.WinControls.RadObject.OnPropertyChanged(RadPropertyChangedEventArgs e) bei Telerik.WinControls.RadElement.OnPropertyChanged(RadPropertyChangedEventArgs e) bei Telerik.WinControls.VisualElement.OnPropertyChanged(RadPropertyChangedEventArgs e) bei Telerik.WinControls.RadComponentElement.OnPropertyChanged(RadPropertyChangedEventArgs e) bei Telerik.WinControls.RadItem.OnPropertyChanged(RadPropertyChangedEventArgs e) bei Telerik.WinControls.UI.UIItemBase.OnPropertyChanged(RadPropertyChangedEventArgs e) bei Telerik.WinControls.UI.LightVisualElement.OnPropertyChanged(RadPropertyChangedEventArgs e) bei Telerik.WinControls.UI.ExpanderItem.OnPropertyChanged(RadPropertyChangedEventArgs e) bei Telerik.WinControls.RadObject.RaisePropertyNotifications(RadPropertyValue propVal, Object oldValue, Object newValue, ValueSource oldSource) bei Telerik.WinControls.RadObject.SetValueCore(RadPropertyValue propVal, Object propModifier, Object newValue, ValueSource source) bei Telerik.WinControls.RadElement.SetValueCore(RadPropertyValue propVal, Object propModifier, Object newValue, ValueSource source) bei Telerik.WinControls.UI.ExpanderItem.set_Expanded(Boolean value) bei Telerik.WinControls.UI.GridExpanderItem.set_Expanded(Boolean value) bei Telerik.WinControls.UI.ExpanderItem.ToggleExpanded() bei Telerik.WinControls.UI.ExpanderItem.OnMouseUp(MouseEventArgs e) bei Telerik.WinControls.RadElement.OnCLREventsRise(RoutedEventArgs args) bei Telerik.WinControls.RadElement.OnBubbleEvent(RadElement sender, RoutedEventArgs args) bei Telerik.WinControls.RadElement.RaiseBubbleEvent(RadElement sender, RoutedEventArgs args) bei Telerik.WinControls.RadItem.RaiseBubbleEvent(RadElement sender, RoutedEventArgs args) bei Telerik.WinControls.RadElement.RaiseRoutedEvent(RadElement sender, RoutedEventArgs args) bei Telerik.WinControls.RadElement.DoMouseUp(MouseEventArgs e) bei Telerik.WinControls.ComponentInputBehavior.OnMouseUp(MouseEventArgs e) bei Telerik.WinControls.RadControl.OnMouseUp(MouseEventArgs e) bei Telerik.WinControls.UI.RadGridView.OnMouseUp(MouseEventArgs e) bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) bei System.Windows.Forms.Control.WndProc(Message& m) bei System.Windows.Forms.ScrollableControl.WndProc(Message& m) bei Telerik.WinControls.RadControl.WndProc(Message& m) bei Telerik.WinControls.UI.RadGridView.WndProc(Message& m) bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

Our application doesn't explicitly set a default theme so it defaults to ControlDefault.
One screen uses the MaterialBlueGrey theme, so I wanted the related MessageBoxes to also use that theme.
Per the instructions I used the following code:
RadMessageBox.SetThemeName("MaterialBlueGrey");
RadMessageBox.Show("MESSAGE");
RadMessageBox.SetThemeName("ControlDefault");The problem is that, although the overall look goes back to the default theme, some elements stay with the MaterialBlueGrey theme. For example: the button height & caption font.
I tried all these with the same result:
RadMessageBox.SetThemeName("");
RadMessageBox.ThemeName = "";
RadMessageBox.ThemeName = "ControlDefault";
I have a situation where I have code that executes when the Selected Node is changed.
SelectedNodeChanged
The code in the SelectedNodeChange adds controls to some FlowLayoutPanel.
When a user clicks on a node, you can see the controls being added to the control
but the RadTreeView allows the user to select another node eventhough the SelectedNodeChange event has not finished, which
is now causing issues with the FlowLayoutPanelshowing duplicate controls.
If user waits until all controls are in the FlowLayoutPanel, and then selects another node, everything works as expected.
None of the code that adds the controls to the FlowLayoutPanel are Asynchronous.
I DO NOT have Multiselect = true.
** I have noticed that the RadTreeView acts as though it is Asynchronous when filling it. I have code that fills the nodes and you can select the nodes and see the nodes being added behind the scenes.
Maybe control is Asynchronous when changing selected nodes?

Hello, When I drag and drop an item in PageView, I would like it to create a copy of the item (page) when holding the Control key—either within the same PageView or between different PageViews. Could you help me achieve this? Thank you.

When using RadOpenFolderDialog, some people see their mapped drives and some do not. This includes people within my office would should all have their mapped drives created the same way.
Is there a way that I can ensure RadOpenFolderDialog always sees the mapped drives of the user?

Hello, I'm trying to display a chart by salesperson, grouped by month, showing the total sales amount. I've attached a photo. I've tried many things without success. Thank you for your time.
Hello,
we have an application using Telerik version 2021.3.1123.40. It is not the first time these errors were reportet, but I have no methode to reproduce it at the moment. The chain of Events for both errors is, that RadGridView.FilterChanged-Event is called, from there we call our method "UpdateProzessschritte" (UpdateProcessSteps), which does a BeginUpdate and EndUpdate of the grid. When EndUpdate is called, the 2 errors orccured under certain, unknown conditions.
Do you have any ideas which causes could lead to this exceptions and how to fix it? Or is this a known problem which was already fixed in later versions?
I have a WinForms .NET project running Telerik Version 2022.1.222.40 (I know its old but its what I have). Everything is working as expected and the application has no apparent problems at runtime.
After migrating to VS 2022 I am seeing various errors in the output. These errors appears to correspond with the loading of various Telerik components, the first of which is the theme but others include the Pageview control.
The following error is repeated at each of these times:-
Microsoft C++ exception: EEFileLoadException at memory location 0x000000ED451FB450.
Microsoft C++ exception: [rethrow] at memory location 0x0000000000000000.
Any help appreciated.
G

Hello,
VirtualKeyboard (WinForms) on Windows 11 with touchscreen monitor when key touched with finger quite often keeps stuck and repeats input until another key is pressed or mouse leaves that button.
Thats new for Windows 11 (on previous versions that was not happening).
It only happens when physically touched on touchscreen and in Windows 11. If pressed with mouse it does not happening.
To reproduce can be used Telerik demo app > Virtual Keyboard > First Look (please see attached image of my test, button g is pressed and released, but gggggg input keeps appending)
Environment Windows 11 Pro 24H2 with touchscreen monitor.
Also tested on my app with Telerik UI For WinForms 2025.3.812 (the same outcome).
Is there plans to fix this? Or maybe there is a workaround?
Mindaugas
