पर त्रुटियों के समान तरीके से चेतावनियां प्रदर्शित करना मैं किसी व्यवसाय ऑब्जेक्ट को सत्यापित करते समय चेतावनियां और त्रुटियां प्रदर्शित करना चाहता हूं और इन्हें उपयोगकर्ता को दृश्यमान रूप से प्रदर्शित करना है। इस प्रकारwpf नियंत्रण
interface IOrderItem : IDataErrorInfo
{
int ProductId { get; set; }
string ProductName { get; set; }
decimal Price { get; set; }
IDictionary<string, string> Warnings { get; }
}
यह यूआई के लिए बाध्य है:
<TextBox Text="{Binding Price, ValidatesOnDataErrors=True}/>
कोई त्रुटि होगा:
- मूल्य < 0 => "कीमत 0 से कम नहीं हो सकती"
उदाहरण के लिए मैं एक व्यवसाय वस्तु वर्ग इतना की तरह एक अंतरफलक को लागू करने के लिए है
यह अच्छी तरह से काम करता है और टेक्स्टबॉक्स के चारों ओर एक लाल सीमा खींचता है जब मैं IDataErrorInfo
इंटरफ़ेस का उपयोग कर व्यवसाय ऑब्जेक्ट पर त्रुटि संदेश डालता हूं।
मुझे क्या करना चाहते हैं यह भी उदाहरण के लिए, चेतावनी निर्दिष्ट है:
- मूल्य < 15 || मूल्य> 30 => "सहिष्णुता के बाहर मूल्य"
ये चेतावनियां एक टेक्स्ट बॉक्स के चारों ओर एक नारंगी सीमा डालती हैं और उपयोगकर्ता को सूचित करती हैं कि कोई समस्या हो सकती है लेकिन उन्हें आगे बढ़ना बंद नहीं किया जाता है।
चेतावनियां स्ट्रिंग डिक्शनरी मैपिंग प्रॉपर्टीनाम => चेतावनी मैसेज में IDataErrorInfo
के समान तरीके से संग्रहीत की जाती हैं।
प्रश्न: इस बारे में जाने का सबसे अच्छा तरीका क्या है?
- स्पष्ट रूप से मुझे एक ऐसे स्टाइल की आवश्यकता होगी जिसमें टेक्स्ट बॉक्स के लिए नारंगी सीमा हो, लेकिन मैं इसे कैसे ट्रिगर करूं?
- मैं वास्तव में प्रत्येक टेक्स्टबॉक्स के लिए एक अलग शैली नहीं चाहता हूं, तो शैली को उस नाम में प्राप्त करने के लिए अंतर्निहित बाध्यकारी कैसे पहुंच सकता है जिसे इसे शब्दकोश में देखना चाहिए।
मैंने एक बहुत ही समान समस्या में भाग लिया है (http://stackoverflow.com/questions/3813365/mimicking- validation-behaviour-without- validation), इसलिए मैं यहां पर एक बक्षीस पोस्ट कर रहा हूं। – GWLlosa