2011-01-27 15 views
6

क्या XAML का उपयोग करके, इसकी एक कोशिका की सामग्री के आधार पर गतिशील रूप से पंक्ति की पृष्ठभूमि सेट करने का कोई तरीका है?किसी सेल की सामग्री के आधार पर DataGridRow की पृष्ठभूमि सेट करें

धन्यवाद,

फिल

उत्तर

18

आप एक पंक्ति के लिए एक शैली को परिभाषित करने और DataTrigger का उपयोग कर रंग बदल सकते हैं। कुछ इस तरह:

<DataGrid> 
    <DataGrid.RowStyle> 
     <Style TargetType="DataGridRow"> 
      <Style.Triggers> 
       <DataTrigger Binding="{Binding BooleanPropertyOnObjectBoundToRow}" Value="True"> 
        <Setter Property="Background" Value="Red"/> 
       </DataTrigger> 
      </Style.Triggers> 
     </Style> 
    </DataGrid.RowStyle> 
</DataGrid> 

यहाँ BooleanPropertyOnObjectBoundToRow एक बूलियन संपत्ति अपने डेटा एक कोशिकाओं के लिए बाध्य है वस्तु पर है।

+0

मैं लाल रंग की बजाय रंग गतिशील कैसे बना सकता हूं? –

+0

क्षमा करें, शायद मैंने गलत समझा है। मेरी संपत्ति वास्तव में एक 'एनम' है, मुझे लगता है कि मैं बाध्यकारी के लिए बूलियन कनवर्टर के लिए एक enum बना सकते हैं। –

+6

@ फिल: आप बाध्यकारी के मूल्य-प्राप्ति के लिए अपने स्वयं के गणना मूल्य भी निर्दिष्ट कर सकते हैं। इसके लिए आपको अपने गणन का नाम स्थान और सेट के साथ यह मूल्य मूल्य विशेषता में घोषित करना चाहिए = "{x: स्टेटिक yourNamespace: YourEnum.YourValue}" – HCL

संबंधित मुद्दे