The cell content gets clipped when the width of the previous column changes at runtime. This happens in the Windows11 and Office2019 themes (possibly in others) and only if the clipped cell is position before the right frozen columns area.
To work this around, you can call the Rebind() method of RadGridView, after the column width changes.
In the Office2019 theme, the RadGridView's ScrollBar elements should have transparent background by design. This is the track's background shown behind the thumb element that allows drag-to-scroll. Currently, the ScrollBars have a gray background.
To work this around, you can define an implicit Style in the App.xaml that targets the GridViewScrollViewer control. Then, set its Background property.
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/Telerik.Windows.Themes.Office2019;component/Themes/System.Windows.xaml"/>
<ResourceDictionary Source="/Telerik.Windows.Themes.Office2019;component/Themes/Telerik.Windows.Controls.xaml"/>
<ResourceDictionary Source="/Telerik.Windows.Themes.Office2019;component/Themes/Telerik.Windows.Controls.Input.xaml"/>
<ResourceDictionary Source="/Telerik.Windows.Themes.Office2019;component/Themes/Telerik.Windows.Controls.GridView.xaml"/>
</ResourceDictionary.MergedDictionaries>
<Style TargetType="telerik:GridViewScrollViewer" BasedOn="{StaticResource GridViewScrollViewerStyle}">
<Setter Property="Background" Value="Transparent"/>
</Style>
</ResourceDictionary>
</Application.Resources>
InvalidCastException is thrown when the DropIndicatorThickness property of the GridViewHeaderCell is set. Or whenever the DropIndicatorBrush property is accessed. This happens when using the Windows 7 theme. Also, the EnableColumnVirtualization property should be set to False.
System.InvalidCastException: 'Unable to cast object of type 'System.Windows.Media.LinearGradientBrush' to type 'System.Windows.Media.SolidColorBrush'.'
To work this around, you can use an implicit style targeting the GridViewHeaderCell in order to set its DropIndicatorBrush to a SolidColorBrush value.
<telerik:RadGridView.Resources>
<Style TargetType="telerik:GridViewHeaderCell">
<Setter Property="DropIndicatorBrush" Value="White" />
<Setter Property="DropIndicatorThickness" Value="10" />
</Style>
</telerik:RadGridView.Resources>
The column group headers are not displayed when the DisplayIndex property of the GridViewColumn objects is set before the control is loaded.
To work this around, you can set the DisplayIndex of the columns after the RadGridView is loaded.
The Clear Filters option in the FieldFilterControl cannot be selected when the DefaultOperator1 is set in the FilterOperatorsLoading event of RadGridView. The FieldFilterControl is the element shown under the column header when the FilteringMode property of RadGridView is set to FilterRow. Setting e.DefaulteOperator1 in the FilterOperatorsLoading properly selects the corresponding filter in the drop down, but after that you cannot select Clear Filters when clicking on this option.
To work this around, you can use the CellLoaded event instead of FilterOperatorsLoading. This will allow you to get the FieldFilterControlViewModel and set its SelectedOperatorViewModel property.
private void manualGridView_CellLoaded(object sender, CellEventArgs e)
{
if (e.Cell is GridViewHeaderCell && e.Cell.Column.UniqueName == "MyColumn")
{
Dispatcher.BeginInvoke(new Action(() =>
{
var fieldFilter = e.Cell.FindChildByType<FieldFilterControl>();
var viewModel = (FieldFilterControlViewModel)fieldFilter.DataContext;
viewModel.SelectedOperatorViewModel = viewModel.AvailableOperatorViewModels.FirstOrDefault(x => x.FilterOperator == FilterOperator.IsLessThan);
}));
}
}
Exception when resizing column with width set to star and min-width set to 0.
Set the properties to the above and resize a column to 0 and then to the original width -> an exception occurs.
If a RadDocking has its theme set to Windows 11 via the StyleManager.Theme attached property, placing a RadGridView inside (styled with a different theme, such as Office_Black, Summer, etc.) will cause its cells to look merged after performing an edit operation.
As a workaround, the RowHeight and the FontSize properties of the RadGridView instance can be used to resolve this.
Currently, the delimiter is hardcoded to ",". Add a setting that allows changing this and also synchronizing it with the current culture of the system.
Hi Team,
We have a large-scale WPF application that uses the Telerik WPF RadGridView across multiple screens. We are experiencing significant memory growth issues. Upon deep analysis of the memory dump, we observed that the RadGridView continuously pushes DispatcherPriority items into the Dispatcher queue. We also noticed an internal timer within the RadGridView that appears to be active even after the control is no longer visible. We would like to understand how to completely detach and stop this internal timer once the control is removed from the screen, and why the RadGridView keeps pushing DispatcherItem entries into the Dispatcher queue.
Telerik Version : 2017.2.503.45
When GridViewClipboardPasteMode is set to AllSelectedCells and a single clipboard value is pasted into more than one selected cell, RadGridView updates the cell values but does not re-evaluate live grouping for the edited items - rows remain under their previous group header until an explicit Rebind()/refresh.
Pasting into a single cell at a time re-groups correctly.
To work this around, call the CommitEdit and EditItem methods of RadGridView for each row data item in which data was pasted. You can do that in the Pasted event handler:
private void RadGridView_Pasted(object sender, RadRoutedEventArgs e)
{
var editableView = (IEditableCollectionView)this.gridView.Items;
var affectedItems = this.gridView.SelectedCells.Select(c => c.Item).Distinct().ToList();
foreach (var item in affectedItems)
{
editableView.EditItem(item);
editableView.CommitEdit();
}
}