Я не верю, что есть простой способ сделать то, что вы просите, с помощью PropertyGrid
. Что вы действительно должны делать, так это переименовывать значения перечисления, чтобы более четко выразить их цели; это дает дополнительное преимущество, облегчая понимание вашего исходного кода.
Если вам нужно указать дополнительную информацию относительно конкретного свойства , которое устанавливается через PropertyGrid
, вы можете сделать это, пометив его DescriptionAttribute
:
[Description("This is my description of this property")]
public int Foo { get; set; }
Если вы действительно настроены на сохранение значений перечисления такими, какие они есть, вы можете реализовать TypeConverter
и пометить каждое свойство, которое использует конкретное перечисление, с помощью TypeConverterAttribute
; это позволит вам явно указать преобразование между значениями перечисления и текстом, отображаемым в PropertyGrid
. Подробнее см. в этой статье MSDN .