W moim kodzie XAML chcę ustawić Backgroundkolor każdego wiersza na podstawie wartości obiektu w jednym określonym wierszu. Mam ObservableCollectionof z, a każdy z nich zma właściwość o nazwie State. Zacząłem od czegoś takiego w moim DataGrid:
<DataGrid.RowStyle>
<Style TargetType="DataGridRow">
<Setter Property="Background"
Value="{Binding z.StateId, Converter={StaticResource StateIdToColorConverter}}"/>
</Style>
</DataGrid.RowStyle>
Jest to niewłaściwe podejście, ponieważ x nie jest właściwością w mojej klasie ViewModel.
W mojej klasie ViewModel mam ObservableCollection<z>który jest ItemsSourcetego DataGridi SelectedItemtyp z.
Mógłbym związać kolor SelectedItem , ale to zmieni tylko jeden wiersz w DataGrid.
Jak mogę, w oparciu o jedną właściwość, zmienić te wiersze backgroundcolor?
'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')Dlaczego nie znajduje stanu właściwości, gdy moja jednostka to przechowuje, a moja baza danych pokazuje stan jako kolumnę?