У своєму коді XAML я хочу встановити Backgroundколір кожного рядка на основі значення об'єкта в одному конкретному рядку. У мене є ObservableCollectionз z, і кожен з zмає властивість State. Я почав з чогось такого у своєму DataGrid:
<DataGrid.RowStyle>
<Style TargetType="DataGridRow">
<Setter Property="Background"
Value="{Binding z.StateId, Converter={StaticResource StateIdToColorConverter}}"/>
</Style>
</DataGrid.RowStyle>
Це неправильний підхід, оскільки x не є властивістю в моєму класі ViewModel.
У моєму класі ViewModel у мене є , ObservableCollection<z>який є ItemsSourceцим DataGrid, і SelectedItemтипу z.
Я міг би прив'язати колір до SelectedItem, але це змінить лише один рядок у DataGrid.
Як я можу на основі однієї властивості змінити ці рядки 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')це, що він не знаходить стану власності, коли мій об'єкт тримає це, а моя база даних відображає стан як стовпець?