What you could try is bind the Color property of the SolidColorBrush you are using as the alternate row color to a dependency property defined on the main window:
<Style TargetType="{x:Type xcdg:DataRow}">
<Style.Triggers>
<DataTrigger Binding="{Binding RelativeSource={RelativeSource Self},
Path=(xcdg:DataGridVirtualizingPanel.ItemIndex),
Converter={StaticResource rowIndexConverter}}"
Value="True">
<Setter Property="Background">
<Setter.Value>
<SolidColorBrush Color="{Binding RelativeSource={RelativeSource AncestorType={x:Type local:Window1}}, Path=Color}"
Opacity="0.1" />
</Setter.Value>
</Setter>
</DataTrigger>
</Style.Triggers>
</Style>
Then, via the menu or button, change the value of the dependency property, which should automatically change the alternate row color.
Senior Technical Writer
- Xceed Software
In three words I can sum up everything I've learned about life: it goes on.