2011-11-08 10 views
8

पाठ बॉक्स के साथ, यह अच्छी तरह से काम करता है जब मैं App.xml में निम्नलिखित एक्सएमएल डाल:DataGridTextColumn पर टूलटिप में IDataErrorInfo की त्रुटि को कैसे प्रदर्शित करें?

<Style TargetType="{x:Type TextBox}" x:Key="TextBoxValidationStyle"> 
     <Style.Triggers> 
      <Trigger Property="Validation.HasError" Value="true"> 
       <Setter Property="ToolTip" 
      Value="{Binding RelativeSource={RelativeSource Self}, 
        Path=(Validation.Errors)[0].ErrorContent}"/> 
      </Trigger> 
     </Style.Triggers> 
    </Style> 

लेकिन यह केवल पाठ बॉक्स, कैसे DataGridTextColumn के साथ एक समान बात करने के लिए काम करता है?

उत्तर

13

सीधे शब्दों में DataGridTextColumn.ElementStyle और/या DataGridTextColumn.EditingElementStyle, उदाहरण के लिए उपयोग करें:

<DataGridTextColumn MinWidth="80" ...> 
    <DataGridTextColumn.ElementStyle> 
    <Style TargetType="{x:Type TextBlock}"> 
      <Style.Triggers> 
       <Trigger Property="Validation.HasError" Value="true"> 
        <Setter Property="ToolTip" 
       Value="{Binding RelativeSource={RelativeSource Self}, 
         Path=(Validation.Errors)[0].ErrorContent}"/> 
       </Trigger> 
      </Style.Triggers> 
     </Style> 
    </DataGridTextColumn.ElementStyle> 
</DataGridTextColumn> 
+1

हाँ, यह काम करता है! DataGridTextColumn.EditingElementStyle का उपयोग DataGridTextColumn.ElementStyle के बजाय करें। धन्यवाद :) – JatSing

+0

पी/एस: यदि आप DataGridTextColumn का उपयोग करना चाहते हैं। एलिमेंट स्टाइल बस