If RadGridView's source collection implements ICollectionView, the control's data engine allows it to execute its sorting logic, if ICollectionView.CanSort is true. System.Data.DataView implements IBindingList and passing it as a source collection creates BindingListCollectionView, which supports basic (member) sorting and CanSort is true. However, it does not support sorting by expression. The issue is a result of a limitation of the .net framewok.