में उपयोग करती है मुझे निर्भरता संपत्ति के अच्छे कारणों का पता लगाने में कठिनाई हो रही है। System.Controls.TextBox "टेक्स्ट" संपत्ति एक निर्भरता संपत्ति क्यों नहीं है और सामान्य संपत्ति नहीं है? निर्भरता संपत्ति होने पर यह क्या लाभ प्रदान करता है?निर्भरता संपत्ति WPF
उन चीजों में से एक जो मैं पूरा करने की कोशिश कर रहा हूं वह है मेरे उपयोगकर्ता नियंत्रण में एक सत्यापन नियम संपत्ति को जोड़ना जिसमें अन्य सत्यापन नियम शामिल होंगे। यहाँ की तरह:
<customControls:RequiredTextBox.ValidationRules>
<validators:NotNullOrEmptyValidationRule ErrorMessage="FirstName cannot be null or empty"/>
</customControls:RequiredTextBox.ValidationRules>
समस्या यह है कि मुझे यकीन है कि अगर ValidationRules संपत्ति DependencyProperty या सिर्फ एक सामान्य संपत्ति होना चाहिए नहीं कर रहा हूँ है।
ऊपर कोड निम्न त्रुटि देता है:
{"Cannot add element to 'ValidationRules'; the property value is null. Error at object 'LearningWPF.ValidationRules.NotNullOrEmptyValidationRule' in markup file 'LearningWPF;component/addcustomerwindow.xaml' Line 35 Position 66."}
यहाँ ValidationRules संपत्ति है:
public static readonly DependencyProperty ValidationRulesProperty =
DependencyProperty.Register("ValidationRules",
typeof (Collection<ValidationRule>), typeof (RequiredTextBox),
new FrameworkPropertyMetadata(null));
public Collection<ValidationRule> ValidationRules
{
get { return (Collection<ValidationRule>)GetValue(ValidationRulesProperty); }
set { SetValue(ValidationRulesProperty, value); }
}
प्रमाणीकरण नियम किस प्रकार का है? ऐसा लगता है कि आप ऑब्जेक्ट को संग्रह प्रकार में जोड़ने का प्रयास कर रहे हैं, लेकिन संग्रह को तुरंत चालू नहीं किया है। –
मैंने पोस्ट अपडेट किया! – azamsharp
इससे पहले कि आप इसमें आइटम जोड़ सकें, आपको संग्रह को तुरंत चालू करने की आवश्यकता है। आपके RequiredTextBox क्लास के कन्स्ट्रक्टर में जोड़ें: ValidationRules = नया संग्रह <प्रमाणीकरण नियम>(); अब आप xmal के माध्यम से इसमें आइटम जोड़ सकेंगे। –