second example you found लगभग काम करता है, यह बस थोड़ा सा गायब है। जो कुछ आवश्यक था वह मुख्य नियंत्रण में 2 विधियां थी।
इस कोड को AppointmentControl.cs
फ़ाइल में जोड़ें और यह काम करेगा।
protected override object SaveViewState()
{
if (appointments != null)
return appointments.SaveViewState();
return null;
}
protected override void LoadViewState(object savedState)
{
appointments = new AppointmentCollection();
appointments.LoadViewState(savedState);
}
उदाहरण साइट में कोड बहुत सभ्य था। इसने सभी इंटरफेस को लागू किया और यह एक बहुत अच्छा काम किया। जहां यह अलग हो गया था, यह था कि, सार कोडों में आवश्यक सभी कोड होने के बावजूद, इससे कोई फर्क नहीं पड़ता क्योंकि उन जगहों पर इंटरफेस का संदर्भ नहीं दिया गया था जिन्हें उन्हें होना चाहिए था।
कुछ कक्षाओं को लागू करने के अलावा, संग्रह कक्षाओं का इस्तेमाल उनके बारे में "विशेष" नहीं था। ढांचा स्वचालित रूप से इन तरीकों को कॉल नहीं करेगा। ढांचे हालांकि ऊपर लिखे गए ओवरराइड विधियों को कॉल करेंगे, जिन्हें संग्रह में तत्वों को सहेजने के लिए आपके नियंत्रण के लिए आपको लागू करने की आवश्यकता है। जब तक आप उन्हें बुलाते हैं, सबकुछ काम करेगा।
स्रोत
2009-02-01 02:55:35
के डिजाइनर के साथ काम करें, यह एक [उदाहरण के लिए दूसरा अपडेट] [http://blog.spontaneouspublicity.com/child-collections-in-asp-net-custom-controls) –
के लिए धन्यवाद नया। – Larsenal