Cita:
Posteado originalmente por delphi.com.ar
Puedes utilizar un TDBLookupComboBox con cualquier campo en el KeyField, y cuando selecciona uno tomas la PK del DataSet, ya que este se moverá hasta el registro seleccionado
|
Había pensado en eso, pero no me funcionó. Con tu comentario, ahora pienso que puedo estar haciendo algo mal. Yo:
1. Ubico un TDBLookComboBox en mi formulario.
2. Asigno valores para ListSource y ListField (un campo nombre, tipicamente).
3. Asigno valor a KeyField (de la lista).
Entonces:
1. Si a KeyField asigno un campo calculado o el mismo campo nombre que está para mostrarse (ListField), entonces el Combo se comporta de manera extraña y abre la lista para seleccionar un ítem, pero al seleccionarlo, no lo muestra. Pareciera que no selecciona nada. No hay manera que se vea el ítem seleccionado.
2. Si a KeyField asigno un campo cualquiera o uno que sea parte de PK, entonces cada vez que selcciono un ítem de la lista, selecciona el primero que cumple con la condición del KeyField... Al abrir otra vez la lista, muestra seleccionados todos los que cumplen con la condición del KeyField; normalmente, varios !!
.
¿ Alguna idea ? ¿ Estoy haciendo algo mal ? Gracias desde ya.
Roy