I have a observable collection that binds to a data grid. I also have in the view model a color property and I want to bind the background of each row in the data grid to the color property on the vm.
You can bind the Background
in the RowStyle
for DataGrid
<DataGrid ...>
<DataGrid.RowStyle>
<Style TargetType="DataGridRow">
<Setter Property="Background" Value="{Binding MyBackground}"/>
</Style>
</DataGrid.RowStyle>
<!-- ... -->
</DataGrid>
This will work if MyBackground
is a Brush
. You mention in your question that you have a Color
, if this is the case you can use this instead
<Setter Property="Background">
<Setter.Value>
<SolidColorBrush Color="{Binding MyColor}"/>
</Setter.Value>
</Setter>
来源:https://stackoverflow.com/questions/7339509/how-do-i-bind-the-background-of-a-data-grid-row-to-specific-color