Occasionally the DataGrid horizontal scrolling does not work properly after changing its ItemsSource. Still, tapping on any item, make it possible to scroll again.
For Aggregates purpose or just for diplaying some others datas, footer for column in DataGrid it's needed feature.
It would be nice if we can just bind a .net DataTable or DateView as ItemsSource to the RadDataGrid.
Currently, hiding the 'more' button in the of the DataGrid filter Options panel is not possible. This is a feature request to add such an option to the DataGrid column styling options (potentially as a property of the HeaderStyle).
Flicker can be observed when datagrid is manipulated/updated, or entering in edit mode. One example is tapping on a column header - when there is a column with a HeadetTemplate, the column header flickers. Other example is to double-tap a cell to go in edit mode. Also the behavior can be reproduced when DataGrid TemplateColumn is used.
filtering can no longer be applied as the "Reset" and "Filter" buttons are disappeared.
workaround use Xamarin.Forms v 4.8.0.1269
Refer to the attached reproducible.
1. Run app and apply a filter: "Contains 0"
2. Notice #40 is in the correct location, between #30 and #50
3. Press the button on the bottom of the page to go BlankPage and then navigate back.
4. Observe #40 is now at the end of the rows even though the filter is clearly applied.
Look in MainPageViewModel.cs lines 42 to 49. When the navigation back occurs, this code is executed. I can reproduce the problem with both Replace and Add+Remove operations.
public override void OnNavigatedTo(INavigationParameters parameters)
{
base.OnNavigatedTo(parameters);
if (!parameters.ContainsKey("from"))
{
var items = new ObservableCollection<MyModel>();
for (var i = 1; i <= 100; i++)
items.Add(new MyModel { Number = i.ToString() });
Items = items;
}
else
{
var item = Items[39];
// Bug Test #1 - using ObservableCollection Reset
Items[39] = item;
// Bug Test #2 - using ObservableCollection Remove & Add
//Items.RemoveAt(39);
//Items.Insert(39, item);
}
}