Pending Review
Last Updated: 16 Dec 2025 08:59 by Sam

RadHighlightTextBlock — Text binding stops updating when HighlightText is used

.Net framework 4.7.2
Telerik WPF Version 2025.1.211.462

Detailed Information

When developing an application using Telerik's RadHighlightTextBlock control, I encountered the following issues:

When attempting to dynamically update the control's `Text` and `HighlightText` properties through data binding, the control fails to display the updated content correctly. Specifically:

  1. After updating property values in the ViewModel, RadHighlightTextBlock doesn't display the new text content
  2. Even if the text updates, the highlighted portion doesn't correctly reflect the new HighlightText value
  3. The control's UI display is inconsistent with the actual values in the data model

I have confirmed that:

  • Data binding paths are correct
  • ViewModel implements INotifyPropertyChanged
  • Other controls bound to the same data source update correctly

I suspect this might be an issue with RadHighlightTextBlock's internal update handling mechanism, or it may require specific settings to properly handle dynamic update scenarios.

My Code:

MainWindow.xaml

<Window x:Class="RadHighlightTextBlock_Issue.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:RadHighlightTextBlock_Issue"
        xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">
    <Window.Resources>
        <local:MyViewModel x:Key="MyViewModel"/>
    </Window.Resources>
    <StackPanel>
        <telerik:RadHighlightTextBlock x:Name="highlightTextBlock" 
                                       Text="{Binding Source={StaticResource MyViewModel}, Path=SelectedItem.Description}"
                                      HighlightText="{Binding Source={StaticResource MyViewModel}, Path=SelectedItem.HighlightText}"
                                      HighlightForeground="Red"
                                      HighlightBackground="Yellow"
                                      FontSize="16"
                                      Margin="10"/>
        <telerik:RadButton Content="Content0" Command="{Binding Source={StaticResource MyViewModel}, Path=C0Command}"/>
        <telerik:RadButton Content="Content1" Command="{Binding Source={StaticResource MyViewModel}, Path=C1Command}"/>
    </StackPanel>
</Window>

MainWindow.xaml.cs

using System;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Windows;
using System.Windows.Input;

namespace RadHighlightTextBlock_Issue
{
    /// <summary>
    /// MainWindow.xaml 的互動邏輯
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void RadButton_Click(object sender, RoutedEventArgs e)
        {
            highlightTextBlock.Text = "This is a sample text to demonstrate the RadHighlightTextBlock control.";
        }

        private void RadButton_Click_1(object sender, RoutedEventArgs e)
        {
            highlightTextBlock.Text = "This is another sample text for the second button.";
        }
    }

    public class MyViewModel : INotifyPropertyChanged
    {
        public ObservableCollection<DataItem> Items { get; set; }
        public MyViewModel()
        {
            Items = new ObservableCollection<DataItem>
            {
                new DataItem { HighlightText = "sample", Description = "This is a sample description." },
                new DataItem { HighlightText = "second", Description = "This is the second item description." },
                new DataItem { HighlightText = "text", Description = "This item contains the word text." }
            };

            SelectedItem = Items.FirstOrDefault();
        }

        public ICommand C0Command => new RelayCommand<object>((obj) =>
        {
            SelectedItem = Items.FirstOrDefault();
        });

        public ICommand C1Command => new RelayCommand<object>((obj) =>
        {
            SelectedItem = Items.LastOrDefault();
        });

        private DataItem _selectedItem;
        public DataItem SelectedItem
        {
            get { return _selectedItem; }
            set
            {
                if (_selectedItem != value)
                {
                    _selectedItem = value;
                    OnPropertyChanged();
                }
            }
        }

        public event PropertyChangedEventHandler PropertyChanged;

        protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = "")
        {
            var handler = PropertyChanged;
            if (handler != null)
            {
                handler(this, new PropertyChangedEventArgs(propertyName));
            }
        }
    }

    public class DataItem
    {
        public string HighlightText { get; set; }
        public string Description { get; set; }
    }

    /*Implement RelayCommand...*/
}

Has anyone encountered a similar issue? Is there any way to resolve it?
Thank you all.

Declined
Last Updated: 15 Dec 2025 14:00 by ADMIN
The ThumbWidth and ThumbHeight properties of the RadToggleSwitchButton are not taken into account when the mouse is over the control with the Windows 11 theme.
Unplanned
Last Updated: 15 Dec 2025 13:56 by Stenly
Currently, with the Windows 11 theme, the animation is applied via DoubleAnimationUsingKeyFrames, which sets the Width and Height properties of the element that represents the thumb of the RadToggleSwitchButton to 14px, which does not take into account the ThumbWidth/ThumbHeight properties.

We can improve the animation applied to the thumb for the mouse-over state to take into account the values of the ThumbWidth/ThumbHeight and properties.
Unplanned
Last Updated: 15 Dec 2025 11:28 by Stenly
Typing Korean characters in the edit box causes characters to be missing when the autocomplete is shown.

For example, typing the combination to display the "" character, pressing the "" character, will display the autocomplete for items that contain it; however, pressing another key to create a combination representing the "" causes the "" to be omitted, and only the "" is displayed.
In Development
Last Updated: 12 Dec 2025 06:18 by ADMIN
Document with invalid cross-reference stream is not loaded correctly
In Development
Last Updated: 11 Dec 2025 07:41 by ADMIN
Created by: Martin Ivanov
Comments: 0
Category: GridView
Type: Bug Report
0
The CellUnloaded event of RadGridView is not invoked consistent compared to CellLoaded. For example, when you scroll up and down, the CellLoaded event is invoked for each new cell that appears in the view port. However, CellUnloaded is not invoked for cells going outside of the viewport.
In Development
Last Updated: 10 Dec 2025 12:35 by ADMIN
Multiple rows are not selected in FindAll (Ctrl+F) on the Spreadsheet.
Unplanned
Last Updated: 09 Dec 2025 10:29 by Martin Ivanov
Double clicking a word starting with a non-letter symbol selects the symbol as well, instead only selecting the word. 

"(hello)"

In the example above, if you double click on the word "hello", this should select only the word. However, it selects also the opening bracket. The final selection becomes "(hello".

Note that the issue occurs also if you click in the end of the word "hello" and use Ctrl+Shift+LeftArrow to select it to the beginning.
Unplanned
Last Updated: 08 Dec 2025 09:58 by Martin Ivanov
The licensing watermark overlay gets displayed over Visual Studio when a Telerik WPF control gets hosted in the designer of a WinForms project. 
Duplicated
Last Updated: 08 Dec 2025 08:43 by Atanas2

Can we have a floating Label on a RadComboBox and a RadMultiColumnComboBox, same as a WatermarkTextBox?

It is quite annoying to have on a same form a WatermarkTextBox and Combo boxes as they appearance are so different.

Unplanned
Last Updated: 05 Dec 2025 12:47 by Stenly
When a maximized window hosts a RadPivotGrid instance, hovering over a cell at the bottom of the control will cause the tooltip to flicker.
Unplanned
Last Updated: 04 Dec 2025 00:27 by Jake Randolph
Resetting the ItemsSource property results in binding errors that could reduce the performance of the control.
Unplanned
Last Updated: 03 Dec 2025 10:13 by ADMIN

Steps to reproduce:

1. Click filter icon in column

2. Enter invalid value in filter input

3. Press Filter, the value gets underlined, suggesting some kind of error.

Image

4. Click the place marked 1 and then 2.
This time, it seems a message appears about the cause of the error, but it doesn’t fit inside the control.

Image

Unplanned
Last Updated: 02 Dec 2025 15:23 by Stenly
Created by: Stenly
Comments: 0
Category: PivotGrid
Type: Feature Request
0

For the Spanish culture, some of the localization strings are for the German culture.

The following resource keys are the ones containing wrong values:

  • PivotInlineFieldList_ValuesEmptyText
  • PivotInlineFieldList_RowsEmptyText
  • PivotInlineFieldList_ColumnsEmptyText
  • PivotInlineFieldList_FiltersEmptyText
  • Pivot_AggregateSum
  • PivotFieldList_SetSumAggregate
  • PivotFieldList_Top10Sum
  • PivotFieldList_StringFormatDescription

To work around this, you could introduce a custom LocalizationManager and override the GetStringOverride method.

More information about this suggestion can be found here.

In Development
Last Updated: 28 Nov 2025 11:10 by ADMIN
The Filter property of the ExplorerControl and RadFileDialogs allows you to set filter patterns for the files. Setting a wildcard pattern that contains part of the file name doesn't work. For example: 

dialog.Filter = "Special files|.*_FileNamePart.txt"

In Development
Last Updated: 28 Nov 2025 03:45 by ADMIN

Pasting an invalid range of dates in the RadDateRangePicker, for example, "ABC", raises an exception.

To work around this behavior, you could subscribe to the Loaded event of RadDateRangePicker and retrieve the DateRangeMaskedInput element via the visual tree helper methods. Then, subscribe to its ValueChanging event and check whether the NewValue property of the event arguments contains any letters or characters that are not valid. If it does, set the Handled property to True.

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();

        this.dateRangePicker.Loaded += DateRangePicker_Loaded;
    }

    private void DateRangePicker_Loaded(object sender, RoutedEventArgs e)
    {
        DateRangeMaskedInput dateRangeMaskedInput = this.dateRangePicker.FindChildByType<DateRangeMaskedInput>();

        if (dateRangeMaskedInput != null)
        {
            dateRangeMaskedInput.ValueChanging += DateRangeMaskedInput_ValueChanging;
        }
    }

    private void DateRangeMaskedInput_ValueChanging(object? sender, Telerik.Windows.Controls.MaskedInput.RadMaskedInputValueChangingEventArgs e)
    {
        if (e.NewValue.ToString().Any(char.IsLetter))
        {
            e.Handled = true;
        }
    }
}

Unplanned
Last Updated: 26 Nov 2025 17:04 by Eljay
The feature needs to cover functionality as follows: The logarithmic axis has an exponent step (1, 10, 100, 1000) and the current ticks support of the axis only plots evenly distributed ticks. Clients, however, sometimes need to display unevenly distributed ticks (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, and so on).
Under Review
Last Updated: 18 Nov 2025 11:27 by ADMIN

Hi Team,

We have a large-scale WPF application that uses the Telerik WPF RadGridView across multiple screens. We are experiencing significant memory growth issues. Upon deep analysis of the memory dump, we observed that the RadGridView continuously pushes DispatcherPriority items into the Dispatcher queue. We also noticed an internal timer within the RadGridView that appears to be active even after the control is no longer visible.  We would like to understand how to completely detach and stop this internal timer once the control is removed from the screen, and why the RadGridView keeps pushing DispatcherItem entries into the Dispatcher queue.

 

 

Telerik Version : 2017.2.503.45

 

 

Unplanned
Last Updated: 14 Nov 2025 09:55 by Stenly
The arrow button of a RadMenuItem is not highlighted when the mouse is over.
Unplanned
Last Updated: 14 Nov 2025 09:11 by Stenly
When the selection is enabled and the pivot field list is in inline mode, the selection overlay is misaligned.
1 2 3 4 5 6