добавить свойство datagridviewcolumn designtime - PullRequest
3 голосов
/ 13 сентября 2010

У меня есть эта проблема, я создал свою собственную колонку данных и хочу добавить некоторые свойства, которые вы можете изменить при редактировании во время разработки ... вот мой код:

private int nMaxLength;
[Description("Fondoscala valore"), Category("Sea")]
public int MaxLength
{
    get { return nMaxLength; }
    set { nMaxLength = value; }
}

и на самом деле все в порядке, когда вы открываете редактор столбцов, вы видите это свойство в категории Sea, и вы можете изменить его, но когда вы изменили его, если вы перейдете в файл .Designer.cs, вы увидите MaxLength значение до 0 .. без изменений ... в чем проблема?? заранее спасибо

1 Ответ

8 голосов
/ 16 сентября 2010

Конструктор форм выполняет некоторые внутренние хитрости, чтобы позволить вам изменить тип столбца (например, с DataGridViewTextBoxColumn на DataGridViewButtonColumn) во время разработки.В результате этого конструктор полагается на ваш подкласс DataGridViewColumn, имеющий правильно реализованный метод Clone(), т.е.не будет вносить изменения, внесенные вами в значения пользовательских свойств.

...