Оформить Как редактировать и сохранять коллекции с CollectionEditor
Даниэль Захария, статья демонстрирует, как редактировать и сохранять коллекции с CollectionEditor. http://www.codeproject.com/KB/cs/dzcollectioneditor.aspx. Я нашел это хорошим ресурсом. Другой хороший пример - Создание PanelManager в http://dotnetrix.co.uk/custom.htm.
У меня не было проблем с использованием CollectionEditor
. Это довольно просто. Сначала у меня были проблемы с ExpandableObjectConverter
, который я создал, потому что я не понимал его цели. Библиотека MSDN является хорошим источником для этого. Для другого справочного и фактического примера «Как: реализовать преобразователь типов» см. MSDN: http://msdn.microsoft.com/en-us/library/ayybcxe5.aspx.
Почему вы хотите знать "внутреннюю работу"? В чем ваша конкретная проблема? У вас проблемы с редактором или конвертером типов? Вы можете скачать исходный код Microsoft для .NET Framework или проверить CollectionEditor, используя .NET Reflector . Когда я просмотрел код, он мне действительно не помог.
Из моего ограниченного понимания CollectionEditor
использует TypeConverter
для создания кода конструктора, используемого в сгенерированном дизайнером коде формы.
Что касается вашей NullReference, отладка элементов управления во время разработки найдет вашу проблему. См. Пошаговое руководство. Отладка пользовательских элементов управления Windows Forms во время разработки в http://msdn.microsoft.com/en-us/library/5ytx0z24(VS.80).aspx.