I am currently working on a behavior that enables bulk editing functionality for the gridview. I have a working prototype that hooks into the CellEditEnded event. It seems to be a little bit hacky though, involving getting the binding path (args.Cell.DataColumn.DataMemberBinding.Path.Path), separating that out into one (or more) PropertyInfo element, then walking that dependency chain back and calling the final propertyInfo.SetValue(rowItem, newData) for each edited item.
I looked at other alternatives to this and found that the GridViewCell has a Value property. Instead of going the reflection route, I tried to iterate down the rows / cells and set the value using the GridViewCell.Value property. This does not propigate back to the bound object though or update the visual state.
Is there a way to programmatically set cell values without going the reflection route and having to reconstruct the binding?