Catel loses DataContext of row in Telerik RadGridView when virtualization is turned on

Topics: Issues / bugs
Jul 30, 2012 at 7:47 PM


I've been using Catel with Telerik's RadGridView. I have buttons in the rows of the RadGridView. When Telerik's Virtualization is turned on, when I click a button in one of the rows, it corresponds to a different row. For Example I have this:


ButtonA ButtonB Account1


ButtonA ButtonB Account2


When I click ButtonA on the Account1 row, it will show up in the ViewModel for Account2 as if I clicked ButtonA for Account2.

If I turn off Telerik's Virtualization, it works fine. I didn't have the issue above using MVVM Light. I can't turn virtualization off because I'm loading 100s of rows and it takes 3 minutes to load a page with it turned off.


Is there a way around this?



Jul 30, 2012 at 8:43 PM


1) Are you using WPF or Silverlight?

2) Do you have a small repro? You can create an issue in the issue tracker and upload it there. I will fix it asap.

Jul 30, 2012 at 8:46 PM

Thanks for the quick response. I am using Silverlight. I'll work on getting a small repro going.

Jul 31, 2012 at 9:03 PM


I was able to reproduce with a small application and will upload it to the issue tracker. You have to scroll and click the buttons multiple times. The first few are correct, but then after that you will get the wrong ones.

Aug 2, 2012 at 7:43 AM

Using the latest version of Catel seems to fix the issue.

Sep 25, 2012 at 10:23 PM

Hi again,

I found the same issue happening in a different case.

I will post an issue to the issue tracker.

Sep 28, 2012 at 2:19 PM

This is not a catel issue, it's in the converter / group definition. If you fix that, it works like expected.

Sep 28, 2012 at 8:12 PM

Thanks for the update! Yes, it works with your fix in the converter and the xaml.

Nov 6, 2012 at 7:43 PM


I noticed for some reason if I keep on scrolling, the converter gets called, but the Items is empty. The itemscount displays correctly, however there are no items.

I've reopened the issue.