Задать значение свойства при нажатии клавиши Delete в PropertyGrid
В настоящее время я работаю над проектом, в котором работает дизайнер WinForms. я использую PropertyGrid
отображать манипулировать свойствами элементов управления, которые отбрасываются на DesignSurface
,
Я создал UITypeEditor
для изменения значений свойств моих пользовательских элементов управления.
Как я могу сбросить значение свойства в null
когда клавиша Delete нажата в PropertyGrid
,
2 ответа
Решение
Это обрабатывается в PropertyDescriptor
,
Вы переопределяете ResetValue
а также CanResetValue
,
На самом деле все, что вам нужно сделать, это добавить атрибут "DefaultValue" в ваше свойство и указать, что значение по умолчанию равно нулю.
Пример:
[DefaultValue(typeof(Image), null)]
public Image MyLittlePicture { get; set; }