मेरे 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
।
मैं, एक संपत्ति के आधार पर इस पंक्तियों को कैसे बदल सकता हूं?
'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')
यह कैसे कहें कि यह प्रॉपर्टी स्टेट को नहीं मिल रहा है जब मेरी इकाई इसे रखती है, और मेरा डेटाबेस स्टेट को एक कॉलम के रूप में दिखाता है?