Sagar Chopra
Sagar Chopra

Reputation: 45

How to bind the GroupBy of two different Xamdatagrids?

I have two xamdatagrids with same column structure and are binded with two different datatables from my viewmodel.

I am trying to achieve a scenario where if I apply Group By to any column of grid1 , the grid2 should also be grouped in a similar way.

Is there any event which I can use to achieve this ?

Upvotes: 1

Views: 142

Answers (1)

Victor
Victor

Reputation: 8925

It is possible to achieve this functionality by using the Grouping event of the XamDataGrid control.

First, define the Grouping event handler in the XAML:

<igDP:XamDataGrid x:Name="Grid1" Grouping="Grid1_Grouping">

Second, add the following code for Grid1_Grouping:

private void Grid1_Grouping(object sender, Infragistics.Windows.DataPresenter.Events.GroupingEventArgs e)
{
    // Clear all previous items from the groups collection
    Grid2.FieldLayouts[0].SortedFields.Clear();

    // Add the same groups set as currently defined in the Grid1 
    foreach (var g in e.Groups)
    {
        Grid2.FieldLayouts[0].SortedFields.Add(new FieldSortDescription { FieldName = g.FieldName, Direction = g.Direction, IsGroupBy = g.IsGroupBy });
    }
}

Upvotes: 3

Related Questions