Проблема с отображением свойства-структуры в Property Editor
От: bmooh  
Дата: 27.06.13 09:13
Оценка:
Есть структуры
 // цветовая схема
    [System.SerializableAttribute]
    public struct millercolorscheme {
        public System.Drawing.Color BorderColor;
        public System.Drawing.Color BackColor;
    }

и
 /* Структура цветовая схема + спиcок ячеек номерами*/
    [System.SerializableAttribute]
    [System.Runtime.InteropServices.ComVisibleAttribute(true)]
    public struct cellclass{
        public millercolorscheme scheme;
        public int[] celllist;
    }

В создаваемом контроле делаем свойство
// классы ячеек
private Dictionary<string, cellclass> cell_classes;
public Dictionary<string, cellclass> CellClasses
        {
            get {
                return this.cell_classes;
            }
            set {
                this.cell_classes = value;
            }
        }

Когда объект этого контрола в Property Editor видна коллекция, но она не редактируется.
Попробовал просто сделать свойство
[System.Runtime.InteropServices.ComVisibleAttribute(true)]
        public cellclass CellClass 
        {
            get {
                return c1;
            }
            set {
                c1 = value;
            }
        }

В Property Editor это свойство не отображается как структура. Нет возможности развернуть и редактировать поля. Только надпись miller_lib.controls.cellclass
c# property editor class get set dictionary
Re: Проблема с отображением свойства-структуры в Property Editor
От: igor-booch Россия  
Дата: 27.06.13 11:59
Оценка:
Если WinForms то
http://www.codeproject.com/Articles/5372/How-to-Edit-and-Persist-Collections-with-Collectio
Отвечайте на это сообщение, только если у Вас хорошее настроение и в Вашем ответе планируются только конструктивные вопросы и замечания
http://rsdn.ru/Info/rules.xml
Re: Проблема с отображением свойства-структуры в Property Editor
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 30.06.13 19:54
Оценка:
Здравствуйте, bmooh, Вы писали:

Не не не, так дизайн-тайм дотнетовский не работает Нужно сделать некоторое количество телодвижений.

B>Когда объект этого контрола в Property Editor видна коллекция, но она не редактируется.


Для нормального редактора коллекций нужен свой UITypeEditor.

B>В Property Editor это свойство не отображается как структура. Нет возможности развернуть и редактировать поля.


Начни с http://msdn.microsoft.com/en-us/library/system.componentmodel.expandableobjectconverter.aspx
... << RSDN@Home 1.2.0 alpha 5 rev. 100 on Windows 8 6.2.9200.0>>
AVK Blog
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.