Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I bind the background of a data grid row to specific color?

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.

like image 674
david Avatar asked Sep 07 '11 19:09

david


1 Answers

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>
like image 87
Fredrik Hedblad Avatar answered Oct 29 '22 00:10

Fredrik Hedblad