Pregunta

Esta debería ser una tarea bastante fácil, sin embargo, estoy un poco perplejo, tengo un control LookUpEdit, lo he enlazado a una fuente de datos y configuré el displaymember y ValueMenber correctamente.

Este control ahora se está completando correctamente.

Mi problema es que normalmente extraería algunos datos y luego los 'establecería' en la ID, por ejemplo:

LookUpEdit.EditValue = [Algunos ID de mi base de datos]

Sin embargo, en este caso particular, no tengo acceso al ID PERO tengo acceso al valor displymember (de la base de datos), entonces, ¿cómo configuro el control LookUpEdit dado solo el valor displaymember?

¿Fue útil?

Solución

Uso:

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

Es la forma preferida. El uso de la propiedad Text es un poco ilógico como notó. Funciona ahora, pero no me sorprendería si deja de funcionar en el futuro después de actualizar los ensamblados DevExpress.

Otros consejos

¡Lo resolvió!

Si lo configura de la siguiente manera:

LookUpEdit .Text = [Valor de cadena de la base de datos]

IF ese valor de cadena coincide exactamente, entonces editValue (es decir, el ID) también está configurado correctamente para el elemento que ha extraído de la Base de Datos.

Esta propiedad 'Texto' parece algo ilógica (en mi opinión) (por ejemplo, tienen GetDatasourceByName, etc., seguramente tendría sentido tener SetItemByName o algo similar), pero funciona en cualquier caso.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top