PropertyGrid, чем отличается поведение desiger от времени выполнения? - PullRequest
3 голосов
/ 13 марта 2012

У меня были некоторые проблемы с сеткой свойств.А именно:

Поведение не то же самое, когда я использую сетку свойств в конструкторе Visual Studio, в отличие от во время выполнения, а также во время отладки.

Несколько замечаний (это использованиеформа в конструкторе и редактирование настраиваемого текстового поля, а не встраивание сетки свойств в форму и присоединение ее к одному и тому же настраиваемому текстовому полю)

Когда в конструкторе выбрано несколько объектов, и я устанавливаю свойство(пользовательский тип, с конвертером) Я получаю исключение нулевой ссылки.Когда я использовал поле «SelectedObjects» во время выполнения, я не получал исключения.Если я присоединю отладчик к конструктору, исключение не произойдет, и мои настройки свойств будут работать правильно.

Я реализовал свой собственный конвертируемый объект расширяемого объекта, который выполняет упорядочение свойств.Мои свойства отображаются в правильном порядке, когда я запускаю свое приложение, но они все еще отображаются в порядке по умолчанию при использовании дизайнера Visual Studio.

Существуют ли какие-либо ресурсы, которые могут помочь объяснить, почему эти приложенияповедение происходит?

Спасибо!

1 Ответ

2 голосов
/ 13 марта 2012

Вы ссылаетесь на какие-либо классы за пределами текущей сборки (или даже за ее пределами решения)?

Конструктор не так хорош, как загрузка этих внешних DLL. Существуют ситуации, когда разработчик узнает, что вы наследуете ExpandableObjectConverter, но не можете загрузить ваш конкретный базовый класс, и, в конце концов, он просто загружает универсальный конвертер. Попробуйте загрузить все ваши базовые классы в текущую сборку и посмотрите, имеет ли это значение.

...