Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.01.23;
Скачать: CL | DM;

Вниз

Надо в каждой ячейке DBGrida иметь свой выпадающий список.   Найти похожие ветки 

 
alextov   (2004-12-15 18:17) [0]

пользую DBGridEh .
Там есть свойство Column.PickList,куда заноситься список строк, которые будут выпадать в комбобоксе.
Но это свойство на всю колонку , а мне надо, чтоб выпадающий список, зависел от номера строки (значения строки).
Подскажите как это можно реализовать...


 
Соловьев ©   (2004-12-15 18:28) [1]

лукап поле


 
alextov   (2004-12-15 18:53) [2]

и к каждой записи(строке) подключать новый лукап-датасет?


 
Zacho ©   (2004-12-15 23:46) [3]

alextov   (15.12.04 18:53) [2]

Формируй PickList в DataSet.AfterScroll

А вообще, подробнее опиши свою задачу - возможно есть более простое/правильное решение.


 
Соловьев ©   (2004-12-16 10:30) [4]

и к каждой записи(строке) подключать новый лукап-датасет?

Т.е. у тебя это поле имеет разнородную информацию? А как это?


 
Sergey13 ©   (2004-12-16 10:43) [5]

2[2] alextov   (15.12.04 18:53)
>и к каждой записи(строке) подключать новый лукап-датасет?
Ты бы описал попдробнее зависимость выпадающего списка "от номера строки (значения строки)".
В принципе, можно фильтровать лукап-датасет по значению строки текущего НД. Но тогда наверное возникнет напряг с отображением других строк, отличных по значению от текущей.
Мне больше нравится решение от [3] Zacho © , только может не на AfterScroll, а на BeforeEdit стоит это дело лучше посадить.


 
alextov   (2004-12-16 11:11) [6]

Поподробнее
НАПРИМЕР  селект возвращает 3 строки со значениями
  "красный"
  "синий"
  "зеленый"
Мне нужно чтобы при установке курсора в ячейку со значением "красный" выпадал список выбора -
  "темно красный"
  "светло красный"
  "бордовый"
но при установке курсора в ячейку со значением "зеленый" выпадал список выбора -
  "темно зеленый"
  "светло зеленый"
  "салатовый"

Я пробовал подключать разные лукап-датасеты, но тогда действительно возникает проблема с отображением строк, которые не представлены в текущем лукап-датасете.
Похожая проблема возникает если менять PickList в DataSet.AfterScroll - но как-то периодически...


 
Соловьев ©   (2004-12-16 11:15) [7]

Мне нужно чтобы при установке курсора в ячейку со значением "красный" выпадал список выбора -
 "темно красный"
 "светло красный"
 "бордовый"
но при установке курсора в ячейку со значением "зеленый" выпадал список выбора -
 "темно зеленый"
 "светло зеленый"
 "салатовый"

А что тебе мешает чтобы селект возращал как раз это?????


 
Sergey13 ©   (2004-12-16 11:19) [8]

А если попробовать настроить лукап не по одному полю, а по нескольким (2). Вроде должно работать.


 
Соловьев ©   (2004-12-16 11:22) [9]

2 Sergey13 ©   (16.12.04 11:19) [8]
Тут стандартная завязка мастер-детайл. Автор сам себя путает.


 
Sergey13 ©   (2004-12-16 11:28) [10]

2[9] Соловьев ©   (16.12.04 11:22)
Скорее тут недоработка (с моей т.з.) в проектировании. Если есть всего одно поле "цвет", а справочник "цвета" спроектирован с внутренними зависимостями, то работать с этим очень трудно. Следовало бы в рабочей таблице 2 поля "цвет" и "оттенок".
Такое мое ИМХО на мои же догадки о структуре таблиц автора. 8-)


 
alextov   (2004-12-16 11:35) [11]

2 Соловьев
Один из нас точно чего-то не понимает :)

Мне нужно чтобы пользователь несогласный с тем  что  "зеленый" - зеленый мог выбрать из списка "салатовый"
и в следующей строке в этой же колонке выбрать из списка "автомобиль".
Но чтоб в первой строке в выпадающем списке "автомобиль" не светился и ,соответственно, во второй строке в списке не светился "салатовый".


 
alextov   (2004-12-16 11:38) [12]

возможно с цветом был не совсем удачный пример
лучше для понимания такая структура таблицы
"исследование" - "результат"
для разных исследований - разные результаты (соответственно - разные выпадающие списки в колонке результат)


 
Sergey13 ©   (2004-12-16 11:39) [13]

2[11] alextov   (16.12.04 11:35)
А как организован справочник, откуда берутся "салатовые" и "автомобили"? 8-)


 
Соловьев ©   (2004-12-16 11:40) [14]

Мне нужно чтобы пользователь несогласный с тем  что  "зеленый" - зеленый мог выбрать из списка "салатовый"

Интересно, а что ты собераешся увидеть, если у тебя запрос возращает, красный, зеленый и желтый, а ты туда салатовый запишешь?
Тут имхо, чего то не туда пошло. Чего-то вовсе я запутался. Что нужно то?


 
Соловьев ©   (2004-12-16 11:41) [15]

(соответственно - разные выпадающие списки в колонке результат)

ага. это уже ближе. Ну вот и вторая колонка вырисовалась :)
Что и требовалось - стандартная связка мастер-детайл и лукап поля :)


 
msguns ©   (2004-12-16 16:33) [16]

Вот что происходит, когда в наличии неуемное желание редактировать непосредственно в гриде ;)))


 
имя   (2004-12-17 09:51) [17]

Удалено модератором



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

Текущий архив: 2005.01.23;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.033 c
1-1105011356
Viola
2005-01-06 14:35
2005.01.23
Получить текст от символа < до ... над котрым находиться курсор


3-1103271252
Priest
2004-12-17 11:14
2005.01.23
Расширенные процедуры SQL Server


1-1103842904
Homa_Programer
2004-12-24 02:01
2005.01.23
word((((


14-1103925114
palva
2004-12-25 00:51
2005.01.23
Фортран


4-1101586279
TankMan
2004-11-27 23:11
2005.01.23
Кто-нибудь может дать примерчик в котором можно было-бы