Unplanned
Last Updated: 08 May 2025 15:33 by Stenly

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.

In Development
Last Updated: 08 May 2025 12:30 by ADMIN
Created by: Trevor
Comments: 0
Category: RichTextBox
Type: Bug Report
1

When a new line is placed right after a nbsp, the new line is ignored in the layout. This can be reproduced by importing the following HTML:

First&nbsp;<br/>Second

In Development
Last Updated: 08 May 2025 11:45 by ADMIN
Distinct values are not displayed when setting the FilterMemberPath to the Date property of a DateTime DataTable column when it contains DBNull.Value.

Generally, this is present because while the distinct values are generated, we check for the Date property in each row, however, when it reaches a row that has a DBNull.Value value, an exception is thrown because the Date property cannot be found in null.
In Development
Last Updated: 08 May 2025 10:13 by ADMIN

MF_E_SHUTDOWN error occurs in some cases when the camera MediaFoundation resources get released. This may happen on unloaded or initialized of the RadWebCam control.

Here is one of the exception stacktraces that may be observed:

Description: The process was terminated due to an unhandled exception.
Exception Info: System.Exception: Stop failed: MF_E_SHUTDOWN
   at Telerik.Windows.MediaFoundation.MediaFoundationHelper.ThrowOnHResultError(HResult hr, HResult expected, String message)
   at Telerik.Windows.MediaFoundation.BaseMediaFoundationPresenter.StopSession()
   at Telerik.Windows.Controls.RadWebCam.<Stop>b__38_0()

In Development
Last Updated: 08 May 2025 07:59 by ADMIN
Add the CellIndex or CellRange of the clicked cell in the HyperlinkClicked event arguments (HyperlinkClickedEventArgs).
In Development
Last Updated: 08 May 2025 07:59 by ADMIN
Currently, the HyperlinkClicked event of RadWorksheetEditor is raised only for external hyperlinks (web and mailto addresses). Raise the event also for links pointing to the a cell in the same document.
Unplanned
Last Updated: 07 May 2025 15:15 by Valentin
When displaying PDF-Files using PDFViewer, ContentElementsCanvas .RenderAsync uses reflection (DispatcherObjectUtils.ApplyDispatcher) to render Visuals on multiple threads.
However this leads to a memory leak since the dispatchers cant be GC'ed, see screenshot below.




The Screenshot is from the actual application we expirienced this issue with, the attached reproduction example is a boiled down version of what your code does.
If you wanna reproduce this on your own, create an application that uses PdfViewer that switches between many pdf files. The ammount of Dispatchers will grow steadily, probably to a total of the number of threads used by Task.Factory.

Unplanned
Last Updated: 07 May 2025 14:54 by Martin Ivanov

A memory leak in RadPdfViewer when the control gets removed from the visual tree.

To work this around, use the reflection API to access the leaking VisualTarget objects and call their Dispose method manually.

var pdfViewer = hostBorder.Child as RadPdfViewer;

if (pdfViewer != null)
{
    var canvas = viewer.ChildrenOfType<Canvas>().FirstOrDefault(x => x.GetType().Name.Contains("ContentElementsCanvas"));                
    var visualTargetsDictionaryField = canvas.GetType().GetField("pageNumberToVisualTarget", BindingFlags.NonPublic | BindingFlags.Instance);
    var visualTargetsDictionary = (Dictionary<int, List<VisualTarget>>)visualTargetsDictionaryField.GetValue(canvas);
    foreach (KeyValuePair<int, List<VisualTarget>> target in visualTargetsDictionary)
    {
        for (int i = 0; i < target.Value.Count; i++)
        {
            VisualTarget item = target.Value[i];
            item.RootVisual = null;
            item.Dispose();
        }
    }  
}
hostBorder.Child = null;
hostBorder.Child = new RadPdfViewer() { Document = newDocument };

Unplanned
Last Updated: 07 May 2025 09:02 by Stenly

The CustomFilterDialogContent element's OK and Cancel buttons are different in size for the Windows 11 theme.

To work this around, you can subscribe to the Loaded event of the CustomFilterDialogContent element and retrieve the RadButton with x:Name="PART_ButtonCancel" via the ChildrenOfType extension method. On the retrieved button, set the VerticalAlignment property to Center.

The following code snippet showcases this suggestion's implementation:

static MainWindow()
{
    EventManager.RegisterClassHandler(typeof(CustomFilterDialogContent), LoadedEvent, new RoutedEventHandler(OnCustomFilterDialogContentLoaded));
}

private static void OnCustomFilterDialogContentLoaded(object sender, RoutedEventArgs e)
{
    RadButton cancelButton = ((CustomFilterDialogContent)sender).ChildrenOfType<RadButton>().FirstOrDefault(x => x.Name == "PART_ButtonCancel");

    if (cancelButton != null)
    {
        cancelButton.VerticalAlignment = VerticalAlignment.Center;
    }
}

In Development
Last Updated: 02 May 2025 10:25 by ADMIN
Scheduled for 2025 Q2 (May)
When the DropDownPlacement property of the RadDropDownButton element is set to Top and the Windows 11 theme is used, a Setter in the default ControlTemplate tries to set the VerticalOffset of the drop-down Popup element. This is done via a converter (of the type of MultiplyValueConverter), to which a "-1" is passed as a ConverterParameter. In the Convert method of the converter, the native System.Convert.ToDouble method tries to convert the ConverterParameter to the type of double. Internally, the Convert.ToDouble method uses the current culture when converting a string to a double.

This is observed when using a different culture, for example, "ar-EG".
In Development
Last Updated: 02 May 2025 10:25 by ADMIN
Scheduled for 2025 Q2 (May)

NullReferenceException occurs when the the automation peers creation for the rows goes over 10,000 peers (the MaxCachedPeersSize setting of the GridViewDataControlAutomationPeer). The exception occurs only when the 'record' modifier is used in the class definition. For example:

public record class MyClass(int Id)
{
}

The exception stacktrace is:

System.NullReferenceException: 'Object reference not set to an instance of an object.'
peer was null.
Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Automation.Peers.GridViewDataControlAutomationPeer.ClearPeer(Telerik.Windows.Automation.Peers.DataItemAutomationPeer peer)   Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Automation.Peers.GridViewDataControlAutomationPeer.GetOrCreateItemPeer(object item, int index) Line 288 C#  Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Automation.Peers.GridViewRowAutomationPeer.FindDataItemAutomationPeer(System.Collections.Generic.List<System.Windows.Automation.Peers.AutomationPeer> childPeers) Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Automation.Peers.GridViewRowAutomationPeer.GetChildrenCore() 

.

To work this around use the "class" modifier instead of "record". For example, instead of:

public record class MyClass(int Id)
{
}

Use:

public class MyClass
{
    public int Id { get; set; } 
}

 Or alternatively, increase the MaxCachedPeersSize value.

 

In Development
Last Updated: 02 May 2025 10:25 by ADMIN
Scheduled for 2025 Q2 (May)
When using the Xaml version of our assemblies and the Material theme is set through the StyleManager, the glyph on the close button of each SearchAutoCompleteBoxItem element is not visible.
In Development
Last Updated: 02 May 2025 10:25 by ADMIN
Scheduled for 2025 Q2 (May)
The CSharpTagger matches the following character combination as a multiline comment start - / * (slash and a start with a whitespace between). This causes wrong tags creation in scenarios where the * character is a part of a single line comment. The correct comment start and end should be /* and */.

In the following example, the beginning of the first single line comment is considered a multiline comment start, but since nothing closes it, the entire text is tagged and colored as a comment.

// ***********************************************************************
// some other content here
// some other content here
// ***********************************************************************

public class TestClass
{
}

In Development
Last Updated: 02 May 2025 10:25 by ADMIN
Scheduled for 2025 Q2 (May)
ADMIN
Created by: Tanya
Comments: 0
Category: Spreadsheet
Type: Bug Report
14
Check how the performance can be improved in this scenario. The StyleGallery is taking much time to load, the GetUsedCellRange method is called multiple times.
In Development
Last Updated: 02 May 2025 10:25 by ADMIN
Scheduled for 2025 Q2 (May)

Currently, the DataFormatString property of the columns is applied only to the top-level rows and not to the child ones.

To work this around, create a new DataTemplate for the CellTemplate property of the column and set the StringFormat property of the Binding instance for the element that will be used to display the cell's value in view mode.

<telerik:GridViewDataColumn.CellTemplate>
    <DataTemplate>
        <TextBlock Text="{Binding MyPropertyValue, StringFormat=N2}"/>
    </DataTemplate>
</telerik:GridViewDataColumn.CellTemplate>

 

In Development
Last Updated: 02 May 2025 10:25 by ADMIN
Scheduled for 2025 Q2 (May)
Created by: Stenly
Comments: 2
Category: Map
Type: Feature Request
1
Add language property support for AzureMapProvider

Workaround:
Create a custom provider with a custom source, and on the GetTile method of the custom source, you can override the query to contain the language parameter.
In Development
Last Updated: 02 May 2025 10:25 by ADMIN
Scheduled for 2025 Q2 (May)
The image rendering of the signed document with indexed color space is incorrect when importing it.
Declined
Last Updated: 29 Apr 2025 06:52 by ADMIN

Type in Japanese text in RichTextBox that word wraps beyond the first line and export it to PDF. The text should always be left aligned (as visually shown when typing) but has an "indent" when exported when the font is Segoe UI.

Image

Declined
Last Updated: 29 Apr 2025 06:40 by ADMIN

When adding a button cell as below, if the button cell is selected the button doesn't work when tapping it.

<telerik:GridViewDataColumn Header="Config"
                            DataMemberBinding="{Binding .}" IsReadOnly="True">
    <telerik:GridViewDataColumn.CellTemplate>
        <DataTemplate>
            <!-- Adding telerik:TouchManager.TouchMode="None" solves the issue -->
            <telerik:RadButton HorizontalAlignment="Center" Style="{StaticResource MyButtonStyle}"
                               Margin="2" Padding="1" Width="Auto" Height="Auto"
                               Command="{Binding DataContext.ShowExtraConfigurationCommand, RelativeSource={RelativeSource AncestorType=Window}}"
                               CommandParameter="{Binding .}" ToolTip="Config">
                <telerik:RadGlyph Glyph="{StaticResource GlyphGear}"/>
            </telerik:RadButton>
        </DataTemplate>
    </telerik:GridViewDataColumn.CellTemplate>
</telerik:GridViewDataColumn>

As stated in the comment, adding the property below to the RadButton solves the issue.

telerik:TouchManager.TouchMode="None"

I have attached a sample project in which the error occurs, simply tap a button, close the MessageBox and tap the same button again. Thank you for your time!

Unplanned
Last Updated: 29 Apr 2025 06:39 by ADMIN

The current implementation of the Code128 symbology class used with RadBarcode throws an InvalidSymbolException for characters with codes greater than 127.

As you can see from this table, there are many special characters in Code128 that have larger codes:

https://en.wikipedia.org/wiki/Code_128#Bar_code_widths

It would be useful to have these in applications which need to modify a reader device's behavior with barcode control characters in order to communicate properly.

1 2 3 4 5 6