2014-01-27 3 views
2

Нужна помощь с PropertyGrid.Как редактировать расширяемые объекты в корневой строке в PropertyGrid?

У меня есть список CustomClass для его отображения в PropertyGrid Control. Я хочу изменить свойства экземпляра CustomClass прямо в propertygrid. (Условие заключается в том, что редакторов не должно быть). Использование ExpandableObjectConverters и PropertyDescriptors, как показано в соответствующей статье, я могу изменить каждый экземпляр CustomClass в List, расширив его до свойств. Но моя цель - изменить свойства CustomClass в своей строке без расширения. (Пример поведения, который вы можете найти для свойства SomeControl Size в VS Control Properties View)

Как редактировать расширяемые объекты в корневой строке?

image from article

Подробный вопрос для этой картины: Как изменить Макс Headroom от его «Менеджер по продажам, менеджер» в «Менеджер по продажам, директор» без расширения. (моя проблема, что эта строка предназначена только для чтения поле)

Похожие статьи: http://www.codeproject.com/Articles/4448/Customized-display-of-collection-data-in-a-Propert?msg=4745311#xx4745311xx Я никогда разместил вопрос там тоже (нет ответа еще нет).

Я могу сгенерировать образец базового кода, если он слишком сложный.

+0

Я отредактировал ваш заголовок. Пожалуйста, смотрите: «Если вопросы включают« теги »в их названиях?] (Http://meta.stackexchange.com/questions/19190/), где консенсус« нет, они не должны ». –

+0

@JohnSaunders ok спасибо – Pavel

ответ

2

Вы должны создавать пользовательские ExpandableObjectConverter и переопределить метод CanConvertFrom и ConvertFrom, чтобы включить редактирование строкового представления Max HeadRoom объекта.

Просьба указать SpellingOptionsConverter в этом примере MSDN.

+0

спасибо @Junaith. есть также ссылка на эту [тему] (http://msdn.microsoft.com/en-us/library/aa302334.aspx#vsnetpropbrow_topic03). Я сейчас пытаюсь использовать его в моем конкретном примере. – Pavel

+0

@Pavel - рад помочь. В упомянутой вами теме также используется одна и та же логика. Если проблема решена, вы можете принять ее как ответ. – Junaith