2009-09-12 3 views
2

У меня есть dll, у которого есть класс под названием Series. Этот класс имеет поле, которое является перечислением DataTypes. Я привязываю datagrid к списку объектов этого класса, и я могу отображать значения перечисления в методе combobox Однако имена значений не имеют большого смысла. Например, я хочу показать «prc» как «цену» и по-прежнему представлять правильное значение объекта.отображение значений перечисления в задаче DataGridComboBox

это то, что я в настоящее время сделать

  this.seriesDataTypeColumn.Items.AddRange(new object[] { 
     MuDBLayer.DataType.mv, 
     MuDBLayer.DataType.vol, 
     MuDBLayer.DataType.num, 
     MuDBLayer.DataType.prc, 
     MuDBLayer.DataType.Composite}); 

мв, т, Num и PRC отображаются в datagridcomboboxes. Я хочу показать денежная стоимость, объем, количество и цена вместо любые идеи?

+0

возможно дубликат [Как есть перечисление связана выпадающий с пользовательской строкой форматирования для значений перечислений?] (Http://stackoverflow.com/questions/796607/how-do-i-have- an-enum-bound-combobox-with-custom-string-formatting-for-enum-valu) – nawfal

ответ

1

Посмотрите на https://msmvps.com/blogs/deborahk/archive/2009/07/10/enum-binding-to-the-description-attribute.aspx или http://blogs.freshlogicstudios.com/Posts/View.aspx?Id=388f7d39-0b90-43bc-b03a-c1f605dfb499. Вы можете добавить атрибут Description в свои перечисления, чтобы отобразить более дружественное значение.

Вы также можете найти дополнительную информацию по этому вопросу How to bind a custom Enum description to a DataGrid.

+0

Работает атрибут описания, но он показывает дружественные значения только при выпадающем списке, но после выбора он по-прежнему показывает исходные. – mustafabar

+0

Хммм ... Обычно я загружаю свои перечисления в класс NameValue, и привязка отображается правильно. – mattruma

Смежные вопросы