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 following exception is observed in certain cases:
at Telerik.Windows.Controls.GridView.GridViewVirtualizingPanel.FlatLayoutStrategy.RealizeMergedCells(Double frozenOffset, IEnumerable`1 mergedCells)
at Telerik.Windows.Controls.GridView.GridViewVirtualizingPanel.FlatLayoutStrategy.CalculateMergedCells(Boolean shouldInvalidateMeasure)
at Telerik.Windows.Controls.GridView.GridViewVirtualizingPanel.CalculateMergedCells(Boolean shouldInvalidateMeasure)
at Telerik.Windows.Controls.GridView.GridViewCellsPanel.ArrangeOverride(Size finalSize)
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.
If you have the following model, the columns that show the Test and Date properties (in the derived class) cannot be sorted or filtered.
public
class
RowModel
{
public
int
Id {
get
;
set
; }
public
Bar FredBar {
get
;
set
; }
}
public
class
Fred : Bar
{
public
DateTime Date {
get
;
set
; }
public
string
Test {
get
;
set
; }
}
public
abstract
class
Bar
{
public
string
Title {
get
;
set
; }
public
double
Value {
get
;
set
; }
}
<
telerik:RadGridView.Columns
>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Id}"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding FredBar.Title}"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding FredBar.Value}"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding FredBar.Date}"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding FredBar.Test}"
/>
</
telerik:RadGridView.Columns
>
This happens only if there are many columns outside of the viewport (a scrollviewer is shown), with their TabStopMode property set to Skip.
In this case, the navigation needs some time in order to get to the next row and select the first available cell.
A possible workaround for this would be to implement a custom Keyboard Command Provider, and to replace the MoveNext command with a custom one, that moves the current cell, by setting the CurrentCellInfo property of RadGridView.
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.