Unplanned
Last Updated: 25 Nov 2019 14:00 by ADMIN
Scrollviewer is not updated when row details are collapsed.
Unplanned
Last Updated: 17 Sep 2019 09:28 by ADMIN

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>

To work this around, set the IsCustomSorting property of the corresponding columns and implement a custom sorting in the Sorting event of RadGridView.

Unplanned
Last Updated: 03 Aug 2016 13:07 by ADMIN
The group panel item image of a column with custom header is blurred
Unplanned
Last Updated: 25 Oct 2020 11:36 by SÅ‚awomir
If in the content of RadGridView.ControlPanelItem has a binding with a RelativeSource or ElementName and the grid is placed in the collapsed UserControl, a binding error is thrown in the output window.
Unplanned
Last Updated: 17 Jan 2020 15:27 by ADMIN

We noticed that RadGridView does not get garbagecollected sometimes.
So i fired up  a memory analyzer to see what is going on.

This is the graph that shows that the RadGridView is causing a leak. The only references that keep the GridView from getting collected are those two WeakEventListeners

To further investigate i decompiled GridViewDataControl and could identify the culprit.

private void SubscribeToDispatcherShutdown()
    {
      if (this.dispatcherShutdownListener != null)
        this.dispatcherShutdownListener.Detach();
      this.dispatcherShutdownListener = new WeakEventListener<GridViewDataControl, object, EventArgs>(this);
      this.dispatcherShutdownListener.OnEventAction = (Action<GridViewDataControl, object, EventArgs>) ((grid, source, eventArgs) => grid.OnDispatcherShutdownFinished(source, eventArgs));
      this.dispatcherShutdownListener.OnDetachAction = (Action<WeakEventListener<GridViewDataControl, object, EventArgs>>) (weakEventListener => this.Dispatcher.ShutdownFinished -= new EventHandler(this.dispatcherShutdownListener.OnEvent));
      this.Dispatcher.ShutdownFinished += new EventHandler(this.dispatcherShutdownListener.OnEvent);
    }

In the second line from the botton

... weakEventListener => this.Dispatcher.ShutdownFinished -
... you are using 'this.Dispatcher...' which causes the leak since the Action will implicitly capture the 'this' reference.
Which kind of defeats the prupose of having a WeakReference inside your WeakEventListener.

Sadly i cannot figure out how it happens, but i think its only when Detach (FrameworkElement.Unloaded ultimately) is not called.
While this is the actual issue, i thought I'd share this with you so you.

Unplanned
Last Updated: 03 Aug 2016 13:07 by ADMIN
When TabStopMode is set to "Skip" on all columns and you press Tab, RadGridView scrolls a little.

Workaround: define a custom KeyboardCommandProvider and clear the pending commands.
Unplanned
Last Updated: 03 Aug 2016 13:12 by Christian
Unplanned
Last Updated: 03 Aug 2016 13:10 by ADMIN
When a gridview is placed in TabControl, the following CodedUI tests will fail:

Test 1. Click on a column header to sort by that column.

Test 2. Click on a drop-down button to filter a column.

Test 3. Drag a column to group by it. 
Unplanned
Last Updated: 03 Aug 2016 13:10 by ADMIN
Unplanned
Last Updated: 11 Mar 2019 14:39 by ADMIN
ADMIN
Created by: Ivan Ivanov
Comments: 0
Category: GridView
Type: Bug Report
2
Unhandled exception System.InvalidOperationException: The calling thread cannot access this object because a different thread owns it.
   at System.Windows.Threading.Dispatcher.VerifyAccess()
   at System.Windows.DependencyObject.GetValue(DependencyProperty dp)
   at Telerik.Windows.Data.SortDescriptorBase.get_SortDirection()
   at Telerik.Windows.Data.Expressions.SortDescriptorCollectionExpressionBuilder.Sort()
   at Telerik.Windows.Data.QueryableExtensions.Sort(IQueryable source, IEnumerable`1 sortDescriptors)
   at Telerik.Windows.Data.QueryableExtensions.Sort(IQueryable source, SortDescriptorCollection sortDescriptors)
. . .
Unplanned
Last Updated: 10 Jan 2017 15:20 by Artem
Unplanned
Last Updated: 03 Aug 2016 13:12 by ADMIN
The issue seems to be a bug with UI Row Virtualization since once I set it to False, it did not occur any more. You can also refer to the documentation on UI Virtualization: http://docs.telerik.com/devtools/wpf/controls/radgridview/features/ui-virtualization.html
Unplanned
Last Updated: 08 Feb 2017 17:03 by ADMIN
Unplanned
Last Updated: 03 Aug 2016 13:10 by ADMIN
Unplanned
Last Updated: 30 Aug 2017 18:54 by ADMIN
workaround:
public MainWindow()
{
    InitializeComponent();

    this.grid.Loaded += grid_Loaded;
}

void grid_Loaded(object sender, RoutedEventArgs e)
{
    this.grid.ChildrenOfType<Grid>().FirstOrDefault(x => x.Name == "PART_OuterGrid").RowDefinitions[1].Height = GridLength.Auto;

    var cells = this.grid.ChildrenOfType<GridViewHeaderCell>();
    foreach (GridViewHeaderCell cell in cells)
    {
        cell.ChildrenOfType<Grid>().FirstOrDefault(x => x.Name == "PART_OuterGrid").RowDefinitions[1].Height = GridLength.Auto;
    }
}
Unplanned
Last Updated: 27 Oct 2017 13:44 by ADMIN
When setting the VirtualItemCount on refreshing the data source, the scrollbar jumps to the top. If the VirtualItemCount is initially set, the behavior is not reproduced. The workaround is to use the scrolling mechanism of the control and scroll back to the desired item.
1 2 3 4 5 6