Модераторы: gambit, Kefir, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Биндинг Dictionary<enum, int> 
:(
    Опции темы
gambit
Дата 20.12.2010, 10:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: нет
Всего: 40



Привет. Хочу спросить как лучше сделать.
Код

enum lya_lya { table, chair, cup}

Имеется Dictionary<lya_lya, int>.

Его я биндю к DataGrid. Все честно работает, выводится:
lya_lya | aaa
----------------
table    | 5
chair    | 3
cup      | 6

НО мне, надо, что бы значения из enum, были написаны по русски

lya_lya | aaa
----------------
Стол    | 5
Стул    | 3
Чашка | 6

Я могу конечно сделать элементы енума написанными по русски, но мне кажется, это не лучшей идеей. Ваши предложения.
PM MAIL ICQ Skype   Вверх
jonie
Дата 20.12.2010, 14:58 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 2
Всего: 118



TypeConverter вам нужно написать http://www.codeproject.com/KB/cs/enumdescconverter.aspx


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
gambit
Дата 20.12.2010, 15:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: нет
Всего: 40



jonie, спасибо, посмотрим
PM MAIL ICQ Skype   Вверх
gambit
Дата 21.12.2010, 02:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: нет
Всего: 40



Попробовал, все ок. Спасибо. Но если у кого буду еще варианты, пож. Пишите. Этот вариант работает через рефлексию, что не самый айс
PM MAIL ICQ Skype   Вверх
CYBERDREAM
Дата 21.12.2010, 10:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I think, there4 I am
***


Профиль
Группа: Завсегдатай
Сообщений: 1096
Регистрация: 31.10.2006
Где: CyberLand

Репутация: 3
Всего: 28



а как без нее?
как уже обсуждалось можешь обертку написать, я делал статический женерик класс, который мне без проблем уже все выдавал в нужном виде 
http://base.vingrad.ru/view/3150-Opisanie-Enum


--------------------
Ищем .Net, Java, Javascript разработчиков, Кипр, Лимассол. (знание английского необязательно)
Telegram, skype: kuchuk.artiom
PM MAIL WWW   Вверх
Kefir
Дата 24.12.2010, 01:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


«Hakuna Matata»
***


Профиль
Группа: Комодератор
Сообщений: 1878
Регистрация: 25.1.2003
Где: Tampere, Suomi

Репутация: 22
Всего: 87



gambit, напиши отдельный IValueConverter для твоего энума. Соответственно там просто надо через switch смотреть какой из энумов пришёл и переводить его. А-ля так:
Код


public object Convert(object value, ...)
{
  if(value is lya_lya) 
  {
    var lya = (lya_lya)value;
    switch(lya)
    {
      case lya_lya.table: return "Стол";
      // ........... и далее по тексту
    }
  }
}

На ConvertBack можешь поставить просто return Binding.DoNothing; (оба эти метода приходят вместе с интерфейсом).
Ну и как обычно - прикручиваешь к биндингу этот конвертер. И будет счастье smile

Добавлено через 1 минуту и 20 секунд
P.S. И никакого рефлекшна!  smile 
PM MAIL WWW Skype   Вверх
jonie
Дата 24.12.2010, 10:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 2
Всего: 118



Kefir, так проще имхо занести значения в resx и выдавать их по ключу, составленому например так: "enum_" + enumValue;


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
Kefir
Дата 27.12.2010, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


«Hakuna Matata»
***


Профиль
Группа: Комодератор
Сообщений: 1878
Регистрация: 25.1.2003
Где: Tampere, Suomi

Репутация: 22
Всего: 87



jonie, куда заносить это уже дело десятое smile Я-то просто написал как эти значения отдавать на использование.

А если о хранении - тут вообще где угодно можно хранить. Я лично просто пользуюсь системой локализации и такие вещи дёргаю из интерфейса - а что там на заднем плане крутится (resources, БД или XML) - это меня не касается smile

Это сообщение отредактировал(а) Kefir - 27.12.2010, 11:16
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | WPF и Silverlight | Следующая тема »


 




[ Время генерации скрипта: 0.0933 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.