Hi,
I've got a Grid bound to a BindingSource, which itself is bound to a DataTable (there's also a filter on the BindingSource). There's a Outlook-style Grouping against one of the columns on the Grid - let's call it Status. In addition, that column is using a ValueList to resolve an id field to string literals. It all works great.
However, if I programmatically update the data on the column by which I'm grouping by (Status), the Grid does not move the edited row into the correct group - it just stays where it was. I have confirmed that the data is correctly getting updated, and if I remove the GroupBy in the Grid, so that the column shows up in the rows as normal, I then see the cell changing value correctly - it's just the Grouping that's not working correctly.
I've tried refreshing the BindingSource and also the Grid (using Rows.Refresh) but it made no difference.
Any ideas?
Thanks
Isaac
Hi Isaac,
The grid does not move the row automatically - this is intentional. The idea is that you don't want the user to edit a cell and have the row move to a new location, because it would be confusing to the user.
To re-sort the row into it's new position, you can call RefreshSortPosition on the row. Or you can call SortedColumns.Refresh on the band to refresh the sorting of the entire band.
Hi Mike,
I actually have a very similar issue to this, but I am using the RefreshSortPosition. Now, normally, this works fine. However, occasionally the data will update and I see the updates in the grid and verify the changes in the datatable. However, the RefreshSortPosition is not moving the row into the correct group.
I tried your suggestion of SortedColumns.RefreshSort(True), however, this very frustratingly collapses all of the groups (altho it does move the row to the correct group).
Do you know if there are any oustanding issues on this functionality? I'm using 7.3.1043.
Thanks,Campbell
Thanks, that worked a treat.