Unplanned
Last Updated: 04 Dec 2025 00:27 by Jake Randolph
Stenly
Created on: 03 Dec 2025 15:13
Category: TimeLine
Type: Bug Report
1
Timeline: Resetting the ItemsSource property results in binding errors
Resetting the ItemsSource property results in binding errors that could reduce the performance of the control.
1 comment
Jake Randolph
Posted on: 04 Dec 2025 00:27

A quick explanation of how to reproduce this bug:

  1. Add a RadTimeline and an "Update Data" button on your window.
  2. Bind the RadTimeline's ItemsSource property to an ObservableCollection in your ViewModel.
  3. Fill the ObservableCollection (let's call it MyItems) with some data so that the data is displayed on the timeline.
  4. Using the "Update Data" button, call "MyItems.Clear()" and then add some other data to it: "MyItems.AddRange(someNewData)".

When you click the "Update Data" button, the timeline should be updated with the new data. However, on the Output pane in Visual Studio, you can see that there are a lot of binding errors.

These errors are apparently caused by a RelativeSource not being ready when the items are evaluated. Once the items are added to the visual tree, the binding will be re-evaulated and it will work correctly.

If you just have a few timeline bars being displayed and updated, the binding errors can be ignored.

However, in non-trivial use cases where you have a significant amount of data, the errors can cause severe slowdown. Even when run in Release mode where the errors are not being output to Visual Studio, it still severely impacts the redraw time of the Timeline. During this time, the UI thread is busy, so the program will be unresponsive.

Thanks.