I understand the content control vs grid issue. I wonder if there is a workaround along another line:
1 - set details AreRowDetailsFrozen to True so scrolling at the master level does nothing with the content scroller
2 - Get the master grid scrollbar
ScrollBar verticalScrollBar1 = this.EquipmentGrid.ChildrenOfType<ScrollBar>().Where(b => b.Name == "PART_VerticalScrollBar").FirstOrDefault();
3 - Set an event on the master grid scrollbar:
verticalScrollBar1.ValueChanged += new RoutedPropertyChangedEventHandler<double>(verticalScrollBar1_ValueChanged);
4 - Then push through the scrollbar position to the detail grid's GridViewScrollViewer.
I already do this to synchronize the scrolling of a non-detail grid with the master grid, and it works fine. But I can't seem to get it to work on the detail grid.
Can you see an approach where a workaround like this might succeed? Any ideas would be most appreciated.