سؤال

لدي مجموعة الكائنات التي تنفذ IList.داخل مجموعة استخدمت قائمة لجمع العناصر.داخل PropertyGrid (في وقت), يربط بشكل صحيح و جمع محرر يفتح.لا يمكن تحرير و يمكن إضافة العناصر بشكل صحيح و لا يمكن التقاط هذه الأساليب عندما يتم استخدامها في جمع الصف.

ومع ذلك ، إذا كنت تحاول إزالة أي من البنود ، يحصلون على إزالتها من المجموعة, ولكن لا IList.إزالة أو IList.RemoveAt ما يتم استخدامها من مجموعتي.العناصر المحذوفة هي أيضا من المفترض أن يكون حذف من قاعدة البيانات ، السلوك لا تنفذ في أساليب إزالة.

أنا أيضا إزالة كل منطق من أساليب إزالة وترك لهم مع رمي الجديد NotImplmented(), وهذه لا يطرد في كل شيء!

أنا أيضا لدي تنفذها الخاصة CollectionEditor, ولكن لا يزال لا يمكن أن نرى طريقة ربط في الكائنات.

لذلك ، حيث يجب أن تبحث لتجد ذات الصلة الأساليب ؟ هل أنا بحاجة إلى تغيير سلوك البنود بلدي ؟

هل كانت مفيدة؟

المحلول

جمع محرر لا تستخدم إزالة أو RemoveAt.بدلا من ذلك, عندما يضغط المستخدم على زر موافق ، ويدعو IList.واضح طريقة ثم يدعو IList.إضافة لإضافة جميع العناصر التي سوف تحتوي على مجموعة.لا أنه يعمل مع النسخة غير عامة من IList.

نصائح أخرى

حسنا، الجرذان!

وداخل بلدي CollectionEditor هل هناك أي طريقة للحصول على عقد من التحصيل الفعلي؟ أعتقد أنني سوف تحصل على مجموعة، ثم قارن ذلك بمجرد الضغط على OK، وحذف السجلات من هناك.

وإذا تعذر ذلك، الغبار قبالة الشاشة مصفوفة التوقف، وحفر من كتاب جيد ونقول للجميع انها تجميع.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top