En mi código XAML, quiero establecer el Background
color de cada fila, según un valor del objeto en una fila específica. Tengo una ObservableCollection
de z
, y cada z
una tiene una propiedad llamada State
. Empecé con algo como esto en mi DataGrid
:
<DataGrid.RowStyle>
<Style TargetType="DataGridRow">
<Setter Property="Background"
Value="{Binding z.StateId, Converter={StaticResource StateIdToColorConverter}}"/>
</Style>
</DataGrid.RowStyle>
Este es un enfoque incorrecto porque x no es una propiedad en mi clase ViewModel.
En mi clase ViewModel tengo una ObservableCollection<z>
que es la ItemsSource
de esto DataGrid
y una SelectedItem
de tipo z
.
Podría vincular el color a SelectedItem
, pero esto solo cambiará una fila en el DataGrid
.
¿Cómo puedo, en función de una propiedad, cambiar este color de fondo de filas?
'State' property not found on 'object' ''z' (HashCode=7162954)'. BindingExpression:Path=State; DataItem='z' (HashCode=7162954); target element is 'DataGridRow' (Name=''); target property is 'NoTarget' (type 'Object')
es posible que no encuentre el Estado de la propiedad cuando mi entidad tiene esto y mi base de datos muestra el Estado como una columna?