I have been working wit the RadGridView for about 6 years now and it works great!
The only thing that still bugs me after all these years is the GridViewComboBoxColumn. The sorting and "Search as you type" features are not working for us. The fact that it uses the DataMemberBinding is something we do not get.
The fact that it is not ordered or searched into the shown value instead of the DataMemberPath is beyond me.
I mean, why would I, as a user, want to search into or sort a value that is not visible to me?
Adding a feature like a string property on the GridViewComboBoxColumn that is used for displaying, searching, filtering and sorting would be awesome!
The filter's distinct values work well, but the field filters show the enum value and that's not good.
I have attached a sample project to demonstrate the problems with sorting, filtering and searching.
There are also print screens attached to clarify each feature mentioned
Our requirement is to navigate through RadGridView table header using keyboard tab navigation.
The header may or may not include checkbox/filter button.
However on mouse focus on table headers , it get highlighted. This feature is currently not possible with tab navigation.
The built-in export capabilities for the RadGridView are clunky and not well though out. Additionally, it doesn't fully support exporting hierarchical child data. (You can do it, but you have to go through a good bit of song and dance for something that I've seen other tool sets do automatically.)
I'd like to see the option fully baked that doesn't require code-behind (allowing an MVVM approach). And asynchronous methods that uses standard async-await conventions.
Add a property to the RadGridView that provides a distinct template for adding a new row.
Sometimes you have classes with no default constructor. Those classes may have properties that are read-only after construction. This cannot be handled in the RadGridView, because you only have the choice of a CellEditTemplate. (I'm envisioning something akin to the RowDetailsTemplate.)
Example: I have a class that defines a invoice match for payment application. Once the invoice is set it cannot be changed. The user can still edit the match, but they're only allowed to edit the amount to be applied.