Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2008.09.14;
Скачать: [xml.tar.bz2];

Вниз

события открытия и закрытия списка поля в DBGrid-e   Найти похожие ветки 

 
Karburator   (2008-03-17 09:33) [0]

Здравствуйте, такая вот проблема, нужно в DBGrid-e, в Lookup-поле отображать все записи из связанной таблицы, а при добавлении\редактировании этого поля этой таблицы только те, по которым будет выполнено какое-то условие.
Проще всего, как мне показалось, сделать это можно путем фильтрования связанной таблицы в момент выпадения списка для редактирования Lookup-поля и отмены фильтрования в момент закрытия.
Подскажите пожалуйста как мне выловить события открытия и закрытия списка поля в DBGrid-e?

ЗЫ: в компоненте TColumn DBGrid-a, в инспекторе объектов вообще нет никаких событий, а вот в компоненте TDBGridColumnEh TDBGridEh-a есть события, но тем не менее не могу выловить с их помощью моменты открытия\закрытия списка. Буду рад помощи по любому из компонентов.


 
ЮЮ ©   (2008-03-17 10:21) [1]

В стандартном всё сделано настолько "добротно", что программисту поведением выпадающего списка не дано управлять.
А твоя задача решается, похоже, с помощью LookupCache. т.е сначала в кэш загружается LookupDataSet полностью, благодаря чему в гриде смогут оьображаться все значения, а затем LookupDataSet можно, например, фильтровать, уменьшая тем самым выпадающий список.

З.Ы. Могу и ошибаться, т.к. TDBGrid давно не использую, а в соих классах различаю эти два эти понятия: "список подстановки" и "выпадающий список".  

>а вот в компоненте TDBGridColumnEh TDBGridEh-a есть события
Смотри исходники, анализируй ...


 
Johnmen ©   (2008-03-17 13:26) [2]

фильтрования связанной таблицы в момент события OnColEnter.


 
Karburator   (2008-03-20 05:05) [3]

а слона-то я и не приметил - вот что мне нужно было:
DBGridEh1.Columns[0].DropDownBox.ListSource: TDataSource



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2008.09.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.053 c
2-1217830597
начинающий
2008-08-04 10:16
2008.09.14
Как посчитать сумму?


15-1216144094
ZIvas
2008-07-15 21:48
2008.09.14
С чего начинать изучение


2-1217779974
minim
2008-08-03 20:12
2008.09.14
Ширина Label


3-1204532945
Ega23
2008-03-03 11:29
2008.09.14
Добавить разом много записей.


2-1217967486
krem
2008-08-06 00:18
2008.09.14
Memo





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский