2010-10-09 9 views
7

क्या मैं अपनी सभी बाइंडिंग और सत्यापनों का फिर से मूल्यांकन करने के लिए एक विंडो को मजबूर कर सकता हूं?डब्ल्यूपीएफ: क्या मैं अपनी सभी बाइंडिंग और सत्यापनों का पुनर्मूल्यांकन करने के लिए एक विंडो को मजबूर कर सकता हूं?

किसी कारण से यह INotifyPropertyChanged.Property को अनदेखा कर रहा है, एक अजीब परिस्थिति में बदल दिया गया है और मैं वास्तविक कारण खोजने तक उपयोग करने के लिए एक कार्य-आसपास की तलाश में हूं।

उत्तर

5

String.Empty संपत्ति नाम के रूप में साथ बढ़ाएं PropertyChanged। यह ऑब्जेक्ट में सभी बाइंडिंग को अपने सभी बाइंडिंग को फिर से चलाने का कारण बन जाएगा।

यदि आपके पास बाध्यकारी समस्याएं हैं तो बाध्यकारी त्रुटियों के लिए अपनी आउटपुट विंडो जांचना न भूलें

8

दुर्भाग्य से, मैं कोई रास्ता फिर से मूल्यांकन के लिए एक खिड़की के भीतर हर बंधन के लिए मजबूर करने के बारे में पता। समस्या का एक हिस्सा यह है कि अधिकांश बाइंडिंग विंडो पर घोषित नहीं की जाती हैं, बल्कि विंडो के विशिष्ट निर्भरता ऑब्जेक्ट बच्चों पर।

आप DependencyObject.InvalidateProperty का उपयोग एक भी बाध्यकारी रद्द करने के लिए कर सकते हैं, लेकिन इस संपत्ति के आधार द्वारा एक संपत्ति पर किया जाना चाहिए। यदि केवल कुछ वस्तुओं को बाध्य किया जा रहा है, तो आप इसका उपयोग अपने मूल्यों की आवश्यकता को बल देने के लिए कर सकते हैं।

कहा जा रहा है, मैं मूल कारण पता लगाना सुझाव है - यह लंबे समय में एक बेहतर समाधान हो जाने की संभावना है।

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

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