DevExpress LookUpEdit Проблема - PullRequest
       23

DevExpress LookUpEdit Проблема

3 голосов
/ 04 августа 2009

Это должно быть довольно простой задачей, однако я немного озадачен, у меня есть элемент управления LookUpEdit, я привязал его к источнику данных и правильно настроил displaymember и ValueMenber.

Теперь этот элемент управления заполнен правильно.

Моя проблема в том, что обычно я извлекаю некоторые данные и затем "устанавливаю" их в ID, например:

LookUpEdit.EditValue = [Идентификатор из моей базы данных]

Однако В данном конкретном случае у меня нет доступа к идентификатору, НО у меня есть доступ к значению displymember (из базы данных), так как мне установить элемент управления LookUpEdit только для значения displaymember?

Ответы [ 2 ]

7 голосов
/ 05 августа 2009

Использование:

lookUp.EditValue = lookUp.Properties.GetKeyValueByDisplayText(yourDisplayText);

Это предпочтительный способ. Использование свойства Text немного нелогично, как вы заметили. Теперь он работает, но я не удивлюсь, если он перестанет работать в будущем после обновления сборок DevExpress.

0 голосов
/ 04 августа 2009

Решено!

Если вы установите его следующим образом:

LookUpEdit .Text = [Строковое значение из базы данных]

ЕСЛИ это строковое значение точно совпадает, тогда editValue (то есть идентификатор) также правильно устанавливается для элемента, который вы извлекли из базы данных.

Это свойство 'Text' кажется несколько нелогичным (на мой взгляд) (например, у них есть GetDatasourceByName и т. Д., Конечно, имеет смысл иметь SetItemByName или что-то подобное!), Но оно работает в любом случае.

...