Страница 1 из 1

DBLookUPComboBoxEh сразу не обновляет поле в таблице

Добавлено: 27 июн 2006, 13:09
savl
Здравствуйте

Использую DBLookUPComboBoxEh. (3.6)
Если в DataSet-е сделать обно из полей LookUp и
на форму положить DBGrid и DBLookUPComboBoxEh(DataField - наше поле).
При измененнии пользователем значения в DBLookUPComboBoxEh, в Grid-е поле изменяется только после сдвига курсора на другое поле.
А в стандартном DBLookUPComboBox поле меняется сразу.
Как сделать чтобы DBLookUPComboBoxEh поле тоже менялось сразу?

Спасибо.

Добавлено: 27 июн 2006, 13:35
CyberMax
В обработке события комбобокса OnChange вставь код:
(Sender as TDBLookupComboBoxEh).UpdateData;
Это заставит его записывать измененное значение в набор.

Добавлено: 27 июн 2006, 13:49
savl
Если так пишу, то выпадает ошибка Not in edit mode.

Добавлено: 27 июн 2006, 14:03
CyberMax
Добавь проверку на состояние датасета. Кстати, можно тогда сделать так:

Код: Выделить всё

if Sender is TDBLookupComboBoxEh then
  if TDBLookupComboBoxEh(Sender).DataSource.State in [dsEdit, dsInsert] then
    TDBLookupComboBoxEh(Sender).UpdateData;

Добавлено: 27 июн 2006, 14:07
Dimitry Sibiryakov
Вот ради этого Борланды и мучились над VCL и DB-aware контролами... :twisted: (Это ехидство растет из другой темы.)

Добавлено: 27 июн 2006, 14:27
CyberMax
Dimitry Sibiryakov писал(а):Вот ради этого Борланды и мучились над VCL и DB-aware контролами... :twisted: (Это ехидство растет из другой темы.)
Да помню, помню... :wink:.

Добавлено: 27 июн 2006, 15:37
savl
Что за тема? Дайте почитать.

Добавлено: 27 июн 2006, 15:58
CyberMax
Там не то, чтобы тема... Так, пара постов про db-aware :).
http://forum.ibase.ru/phpBB2/viewtopic.php?t=2211