List<>सहायक कार्यों के एक जोड़े के साथ A केवल एक स्वचालित रूप से आकार देने वाला सरणी है, दिए गए प्रकार की वस्तुओं का (जैसे: क्रमबद्ध)। यह सिर्फ डेटा है, और आप इसे अपने मॉडल में ऑब्जेक्ट के सेट पर संचालन चलाने के लिए उपयोग करने की संभावना रखते हैं।
ए BindingList<>टाइप सूची या संग्रह के आसपास एक आवरण है, जो IBindingListइंटरफ़ेस को लागू करता है। यह दो-तरफ़ा डेटाबाइंडिंग का समर्थन करने वाले मानक इंटरफ़ेस में से एक है। यह ListChangedईवेंट को कार्यान्वित करके काम करता है , जो आपके द्वारा आइटम जोड़ने, हटाने या सेट करने पर उठाया जाता है। बाध्य नियंत्रण इस घटना को सुनते हैं ताकि यह पता चल सके कि उनके प्रदर्शन को कब ताज़ा किया जाए।
जब आप एक से एक बाइंडिंगसोर्स का डेटा स्रोत सेट करते हैं List<>, तो यह आंतरिक रूप BindingList<>से आपकी सूची को लपेटने के लिए बनाता है । BindingList<>यदि आप इसे बाइंडिंगसोर्स से बाहर एक्सेस करना चाहते हैं, तो आप अपनी सूची को खुद से प्री-रैप करना चाह सकते हैं , लेकिन अन्यथा यह केवल एक ही है। BindingList<>आइटम बदलते समय आप विशेष व्यवहार को लागू करने के लिए विरासत में भी प्राप्त कर सकते हैं ।
IEditableObjectBindingSource द्वारा नियंत्रित किया जाता है। जब आप डेटा को किसी भी बाउंड कंट्रोल में बदलते हैं, तो यह किसी भी कार्यान्वयन ऑब्जेक्ट पर BeginEdit को कॉल करेगा। फिर आप बाइंडिंग सोर्स पर EndEdit / CancelEdit पर कॉल कर सकते हैं और इसे अपनी वस्तु के साथ पास कर देंगे। एक अलग पंक्ति में जाने से एंडएडिट भी कॉल करेगा।