Один вариант :
Вы можете наследовать CMFCPropertyGridProperty
и переопределять HasButton
, возвращая TRUE
. Это приведет к тому, что кнопка с многоточием ("...") появится в правой части поля значения. Переопределите OnClickButton
, чтобы предоставить свой пользовательский интерфейс для редактирования списка значений. Вы можете открыть диалоговое окно с элементом управления списком и способом добавления / удаления / редактирования элементов в списке. Переопределите FormatProperty
, чтобы отобразить список значений в поле значения, и переопределите ResetOriginalValue
и внедрите код для восстановления созданного вами значения.
Другой вариант :
Наследовать CMFCPropertyGridProperty
и переопределять OnKillFocus
. Если введенное пользователем значение нарушает допустимое форматирование (например, список целых чисел, разделенных точкой с запятой), выведите предупреждение и верните FALSE
, чтобы запретить редактирование.