2014-11-07 1 views
0

Я создал словарь с ключом int и строковым значением. Мне удалось установить словарь в качестве источника данных моего поля LookUp. Поле поиска представляет собой элемент репозитория в средстве GridControl devexpress. Значения словаря показаны в моем LookUp, но я хочу установить элемент отображения и значения (и подпись) и не знаю, как это сделать. Ниже вы можете увидеть текущую ситуацию.Элемент репозитория DevExpress LookUp, связанный с элементами набора словаря

enter image description here

Словарь Код:

 Dictionary<int, string> IncIncControls = new Dictionary<int,string>() 
     { 
     { 1, "IncIncidentId"}, 
     { 2, "IncIncidentType"}, 
     { 3, "IncIncidentPriority"} 
     }; 

И код, чтобы установить источник LookUp

pageFieldLookUp.DataSource = (from d in IncIncControls 
             orderby d.Value 
             select new 
             { 
              d.Key, 
              d.Value 
             }).ToList(); 

Как изменить код, чтобы установить источник подстановок таким образом, что я могу установите элемент/элемент отображения и значение. Или есть другой (лучший) способ сделать это?

ответ

0

Вы можете просто использовать RepositoryItemLookUpEditBase.DisplayMember и RepositoryItemLookUpEditBase.ValueMember свойства для отображения набора и значений элементов, а также использовать RepositoryItemLookUpEdit.Columns свойство для установки подписи:

pageFieldLookUp.DataSource = (from d in IncIncControls 
             orderby d.Value 
             select new 
             { 
              d.Key, 
              d.Value 
             }).ToList(); 
pageFieldLookUp.ValueMember = "Key"; 
pageFieldLookUp.DisplayMember = "Value"; 

pageFieldLookUp.PopulateColumns(); 

pageFieldLookUp.Columns[0].Caption = "Key caption"; 
pageFieldLookUp.Columns[1].Caption = "Value caption"; 
+0

работает как шарм! – Sybren

+0

@ nempoBu4 возможно передать событие, измененное в vb для этого RespositoryItemLookUpEdit –

+0

@ Roxy'Pro Извините, я не понимаю, о чем вы говорите. – nempoBu4

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