Unplanned
Last Updated: 18 Jul 2025 21:27 by Martin Ivanov
Currently, the chat messages are not virtualized meaning that all message visuals will be layout. Add a built-in UI virtualization feature that will allow generating only the messages in the viewport.
Unplanned
Last Updated: 18 Jul 2025 07:51 by ADMIN
When selecting multiple cells while holding the CTRL key, a selected cell cannot be excluded from the selection when clicking on it.
Declined
Last Updated: 17 Jul 2025 14:32 by ADMIN
Created by: Reilly
Comments: 3
Category: UI for WPF
Type: Bug Report
0

Windows 11

VS 2022

UI for WPF (2024 Q4)

.NET 8

Binaries.NoXaml\WPF80\Telerik.Windows.Controls.RichTextBox.dll (2024.4.1213.80)

I can create a docx file with Word that results in a null reference exception at

NameValueType
StackTrace" at Telerik.Windows.Documents.Layout.ParagraphLayoutBox.ArrangeOverride(SizeF finalSize) in Telerik.Windows.Documents.Layout\\ParagraphLayoutBox.cs:line 1174"string

Since this exception is in a threadpool that is doing layout, the exception cannot be caught and is not recoverable.

It is easy to reproduce (see attached file). First create a Word doc with a large image that is anchored. Then add a bookmark. Removing either the bookmark or the "square" text wrapping removes the exception.

The code to load the document and display it is very simple:


   private string? LoadDocx(
      string path)
   {
      string? msg = null;
      try
      {
         using var instream = File.OpenRead(path);

         var openXmlRadDocProvider =
            new Telerik.Windows.Documents.FormatProviders.OpenXml.Docx.DocxFormatProvider();

         var raddoc = openXmlRadDocProvider.Import(instream);
         RadRtb.Document = raddoc;
      }
      catch (Exception ex)
      {
         msg = ex.Message;
      }

      return msg;
   }

"RadRtb" is a "RadRichTextBox". This method returns fine. The exception happens later in a non-UI threadpool thread.

 

While I don't expect the component to correctly render EVERY Word document, I do expect it to not exception on a valid document. There must be a better way to handle this.

 

 

Unplanned
Last Updated: 16 Jul 2025 10:40 by Martin Ivanov
Currently, if you have a cell that merges into multiple columns, when you click on the column header, this will select also the adjacent columns where the merged cell extends. Add an option to disable this functionality and select only the cells in the clicked column.
Unplanned
Last Updated: 16 Jul 2025 10:13 by Stenly
Performing selection on spans, some of which are present in a list, does not allow for including all of them in the list. Instead, the current list will have to be removed and reapplied to all selected spans.
Unplanned
Last Updated: 16 Jul 2025 08:52 by UNAI
Tables lose their preferred width after changing the field display mode to name.
Unplanned
Last Updated: 14 Jul 2025 13:19 by ADMIN
Exporting RadDocument to docx format (using the DocxFormatProvider) produces an invalid file. The file is read properly by document viewers like RadRichTextBox or MS Word, but if you open it with "Open XML SDK Productivity Tool for Microsoft Office" or another app that validates documents, the document is treated as invalid.

To work this around, you can import the invalid .docx document using the RadWordsProcessing library (and its RadFlowDocument) and then export it again with RadWordsProcessing.
Unplanned
Last Updated: 14 Jul 2025 13:18 by ADMIN

Document exported to DOCX with 2025 Q2 cannot be opened by 2025 Q1 or previous versions.

 

Workaround: Use document processing to fix the document.

var processing_provider = new Telerik.Windows.Documents.Flow.FormatProviders.Docx.DocxFormatProvider();

var document = processing_provider.Import(File.ReadAllBytes("C:\\Users\\test\\Downloads\\word1.docx"),null);
var bytes_ = processing_provider.Export(document, null);

var rtb_provider = new Telerik.Windows.Documents.FormatProviders.OpenXml.Docx.DocxFormatProvider();
var doc = rtb_provider.Import(bytes_);
radRichTextBox.Document = doc;

Duplicated
Last Updated: 14 Jul 2025 11:25 by AF

Dear Support-Team,

We have an issue with a translation on the spreadsheet print preview.

It shows there in the dropdown for the scaling several Netherland translations on a German system.

The text should be like:

1. Blatt für eine Seite anpassen
Den Ausdruck verkleinern, damit er auf eine Seite passt.

2. Alle Spalten passen auf eine Seite
Den Ausdruck verkleinern, so dass er eine Seite breit ist.

3. Alle Zeilen in eine Seite einpassen
Den Ausdruck verkleiner, so dass alle Zeilen auf eine Seite passen

Could there be a fix for this issue?

Kind regards,

Anna

 

Unplanned
Last Updated: 14 Jul 2025 10:57 by Martin Ivanov
Currently, the BoxPlotSeries supports only vertical rendering (numerical vertical axis and horizontal categorica/date-time). Add support for horizontal orientation for the series. The orientation should change when the chart axes get swapped - numeric as horizontal and categorica/date-time as vertical.
In Development
Last Updated: 10 Jul 2025 16:39 by ADMIN

Currently, the PdfProcessing document model is providing support only for a single function in the Function entry.

According to the PDF Specification: Function: A 1-in, n-out function or an array of n 1-in, 1-out functions.


Completed
Last Updated: 10 Jul 2025 16:36 by ADMIN
ADMIN
Created by: Pavel R. Pavlov
Comments: 1
Category: TileView
Type: Feature Request
0
If a RadTileViewItem hosts several controls (e.g. Buttons, RadioButtons) users should be able to change the focused element using arrow keys.
Unplanned
Last Updated: 10 Jul 2025 13:38 by ADMIN
Unplanned
Last Updated: 10 Jul 2025 11:13 by Swapnil
The \page tag is not respected on import. We should insert new lien o a page break.
Unplanned
Last Updated: 10 Jul 2025 09:17 by ADMIN
The editor used for the footnotes causes ArgumentNullException when trying to pass the dialog to it.
Unplanned
Last Updated: 10 Jul 2025 08:06 by Martin Ivanov

The RadExpander element gets underlined in the Visual Studio designer and you can see a NullReferenceException when mouse over the element. The issue occurs only when data bind the IsExpanded property of RadExpander.

There are no issues at runtime. Also, in the common scenario the designer doesn't break. In case the error breaks the designer, you can set the IsExpanded bindining in the code-behind, instead of XAML.

public MainWindow()
{
    InitializeComponent();
    this.radExpander.SetBinding(RadExpander.IsExpandedProperty, new Binding("IsExpanded"));
}

Unplanned
Last Updated: 07 Jul 2025 13:45 by Stenly
Currently, when exporting/copying cells from a column that is bound to a nested property, the base logic of the GridViewDataColumn is that it has a separate logic for this setup. When exporting/copying, the column will try to retrieve the display value rather than the underlying value.
Completed
Last Updated: 07 Jul 2025 07:29 by ADMIN
Release 2025.2.707

Using the RadRibbonWindow with the Office2019 theme, the maximize icon is updated when the button is interacted with (it does not change between the maximized and normal states). 

To work around this behavior, extract the default ControlTemplate of the RadRibbonWindow element and add an additional Setter with TargetName="maximizeButton" for its Content property, to the Trigger for the WindowState property when its value is set to Maximized. For the Value property of the added Setter, create a new RadGlyph element and set its Glyph property to GlyphWindowCollapse.

The following code snippet showcases this suggestion's implementation:

<Style TargetType="telerik:RadRibbonWindow" BasedOn="{StaticResource RadRibbonWindowStyle}">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="telerik:RadRibbonWindow">
                <Border x:Name="outerBorder" Background="{TemplateBinding WindowBackground}" CornerRadius="{TemplateBinding CornerRadius}">
                    <Grid x:Name="MaximizeWindowDecorator">
                        <Grid telerik:CornerRadiusHelper.ClipRadius="{Binding ElementName=outerBorder, Path=CornerRadius}" telerik:CornerRadiusHelper.ClipRadiusOffset="{TemplateBinding telerik:CornerRadiusHelper.ClipRadiusOffset}" Margin="{TemplateBinding BorderThickness}">
                            <Grid.RowDefinitions>
                                <RowDefinition Height="28"/>
                                <RowDefinition Height="*"/>
                                <RowDefinition Height="Auto"/>
                            </Grid.RowDefinitions>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="Auto"/>
                                <ColumnDefinition Width="*"/>
                                <ColumnDefinition Width="Auto"/>
                            </Grid.ColumnDefinitions>
                            <Border Grid.Row="0" Grid.Column="1" Background="{telerik:Office2019Resource ResourceKey=HeaderBackgroundBrush}"/>
                            <Grid Grid.ColumnSpan="3">
                                <Grid.ColumnDefinitions>
                                    <ColumnDefinition Width="Auto"/>
                                    <ColumnDefinition Width="*"/>
                                </Grid.ColumnDefinitions>
                                <StackPanel x:Name="IconPanel" Orientation="Horizontal" HorizontalAlignment="Left" Visibility="{TemplateBinding IconVisibility}" VerticalAlignment="Center" Margin="4 0 0 0">
                                    <Image
                                    Name="PART_Icon"
                                    shell:WindowChrome.IsHitTestVisibleInChrome="True"
                                    Source="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Icon, Converter={StaticResource IconConverter}}"
                                    Width="{Binding Path=SmallIconSize.Width, Source={x:Static shell:SystemParameters2.Current}}"
                                    Height="{Binding Path=SmallIconSize.Height, Source={x:Static shell:SystemParameters2.Current}}"/>
                                    <Rectangle Width="1" Margin="4 0" Fill="{telerik:Office2019Resource ResourceKey=MainBorderBrush}"/>
                                </StackPanel>
                                <telerikRibbonViewPrimitives:WindowTitle x:Name="WindowTitle"
                                Grid.Column="1"
                                Title="{TemplateBinding Title}"
                                Style="{TemplateBinding TitleBarStyle}"
                                VerticalAlignment="Center"
                                HorizontalAlignment="Center"
                                Margin="0 0 65 0"/>
                            </Grid>
                            <StackPanel x:Name="buttonPanel" Orientation="Horizontal" Grid.ColumnSpan="3" HorizontalAlignment="Right" VerticalAlignment="Center" Margin="0 0 2 0">
                                <telerik:RadButton x:Name="minimizeButton"
                                                   shell:WindowChrome.IsHitTestVisibleInChrome="True"
                                                   ToolTipService.ToolTip="Minimize"
                                                   Command="{x:Static shell:SystemCommands.MinimizeWindowCommand}"
                                                   Style="{StaticResource RibbonWindowButtonStyle}"
                                                   CornerRadius="{Binding Path=CornerRadius.TopRight, RelativeSource={RelativeSource TemplatedParent}}">
                                    <telerik:RadButton.ToolTip>
                                        <TextBlock Text="{telerik:LocalizableResource Key=RibbonWindowMinimize}"/>
                                    </telerik:RadButton.ToolTip>
                                    <telerik:RadGlyph Glyph="{StaticResource GlyphMinimize}"/>
                                </telerik:RadButton>
                                <telerik:RadToggleButton x:Name="maximizeButton"
                                                         shell:WindowChrome.IsHitTestVisibleInChrome="True"
                                                         IsChecked="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=WindowState, Converter={StaticResource BooleanToWindowStateConverter}, Mode=TwoWay}"
                                                         Style="{StaticResource RadRibbonWindowToggleButtonStyle}"
                                                         CornerRadius="{Binding Path=CornerRadius.TopRight, RelativeSource={RelativeSource TemplatedParent}}">
                                    <telerik:RadGlyph Glyph="{StaticResource GlyphWindow}"/>
                                </telerik:RadToggleButton>
                                <telerik:RadButton x:Name="closeButton"
                                                   shell:WindowChrome.IsHitTestVisibleInChrome="True"
                                                   Command="{x:Static shell:SystemCommands.CloseWindowCommand}"
                                                   Style="{StaticResource RibbonWindowButtonStyle}"
                                                   CornerRadius="{Binding Path=CornerRadius.TopRight, RelativeSource={RelativeSource TemplatedParent}}">
                                    <telerik:RadButton.ToolTip>
                                        <TextBlock Text="{telerik:LocalizableResource Key=RibbonWindowClose}"/>
                                    </telerik:RadButton.ToolTip>
                                    <telerik:RadGlyph Glyph="{StaticResource GlyphClose}"/>
                                </telerik:RadButton>
                            </StackPanel>
                            <Border x:Name="PART_ClientAreaBorder" Grid.Column="1" Grid.Row="1" Margin="0 12 0 0" Background="{TemplateBinding Background}"/>
                            <AdornerDecorator x:Name="Adorner" Grid.Column="1" Grid.RowSpan="2">
                                <ContentPresenter Canvas.ZIndex="0" Name="PART_RootContentPresenter"/>
                            </AdornerDecorator>
                            <ResizeGrip x:Name="WindowResizeGrip"
                            Grid.Row="1"
                            Grid.Column="1"
                            shell:WindowChrome.ResizeGripDirection="BottomRight"
                            HorizontalAlignment="Right"
                            VerticalAlignment="Bottom"
                            Visibility="Collapsed"
                            IsTabStop="False"/>
                        </Grid>
                        <Border Background="{x:Null}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="{TemplateBinding CornerRadius}"/>
                    </Grid>
                </Border>
                <ControlTemplate.Triggers>
                    <MultiTrigger>
                        <MultiTrigger.Conditions>
                            <Condition Property="Window.ResizeMode" Value="CanResizeWithGrip"/>
                            <Condition Property="Window.WindowState" Value="Normal"/>
                        </MultiTrigger.Conditions>
                        <Setter TargetName="WindowResizeGrip" Property="Visibility" Value="Visible"/>
                    </MultiTrigger>
                    <Trigger Property="Window.ResizeMode" Value="NoResize">
                        <Setter TargetName="minimizeButton" Property="Visibility" Value="Collapsed"/>
                        <Setter TargetName="maximizeButton" Property="Visibility" Value="Collapsed"/>
                    </Trigger>
                    <Trigger Property="Window.ResizeMode" Value="CanMinimize">
                        <Setter TargetName="maximizeButton" Property="IsEnabled" Value="False"/>
                    </Trigger>
                    <Trigger Property="WindowState" Value="Maximized">
                        <Setter TargetName="MaximizeWindowDecorator" Property="Margin" Value="6"/>
                        <Setter TargetName="maximizeButton" Property="Content">
                            <Setter.Value>
                                <telerik:RadGlyph Glyph="{StaticResource GlyphWindowCollapse}"/>
                            </Setter.Value>
                        </Setter>
                        <Setter Property="CornerRadius" Value="0"/>
                    </Trigger>
                    <MultiTrigger>
                        <MultiTrigger.Conditions>
                            <Condition Property="telerik:RadRibbonWindow.IsAutoHideTaskbar" Value="true"/>
                            <Condition Property="Window.WindowState" Value="Maximized"/>
                        </MultiTrigger.Conditions>
                        <Setter TargetName="MaximizeWindowDecorator" Property="Margin" Value="-7 -2 -7 -6"/>
                    </MultiTrigger>
                    <Trigger Property="IsTitleVisible" Value="False">
                        <Setter TargetName="WindowTitle" Property="Visibility" Value="Collapsed"/>
                    </Trigger>
                </ControlTemplate.Triggers>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

Completed
Last Updated: 07 Jul 2025 07:29 by ADMIN
Release 2025.2.707

An ArgumentOutOfRangeException is thrown when the Separator property is set to a string that contains alpha-numeric/numeric "not required" mask tokens, and the clear button is pressed. The control works with a custom RadMaskedTextInput control to parse different date and time patterns for the start and end dates, which replaces the mask tokens with a placeholder, resulting in the exception when updating the Value property of the RadMaskedTextInput when the value is cleared.

1 2 3 4 5 6