vladman
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору SIgor33 Цитата: Когда открывают Detail View у главной таблицы так и остается активной запись на которой была активна а детал открыт у другой хотехось чтобы позиционировалась на ту запись чей детал открыт в данный момент. | Во-первых, в общем случае, одновременно может быть открыто несколько дитейлов. Если вы имели ввиду, что необходимо позиционироваться на "только что открытый дитейл", то попробуйте обработать событие DataController.onDetailExpanded вашего MasterView, поместив в него следующий код: Код: ADataController.FocusedRecordIndex := ARecordIndex; | Добавлено: mdid Цитата: есть некий журнал документов..в этом журнале есть одинаковое значение полей.. хотелось бы без дополнительного запроса выбрать в cxDBLookupComboBox уникальные значения этого поля...возможно? | в слове "cxDBLookupComboBox" - "DB" указывает на то, что компонент получает/сохраняет некое значение из некоторого датасета, т.е скорее всего из БД. "Lookup" - в любом случае указывает на получение списка возможных значений из датасета, что тоже, скорее всего из БД. Это несколько противоречит вашему условию "хотелось бы без дополнительного запроса". Вы уверены, что хотите использовать для вашей задачи именно DBLookupComboBox? Может вы имели ввиду cxComboBox? Если последнее, то попробуйте следующий код: Код: var vFilterList: TcxDataFilterValueList; i: Integer; begin vFilterList := <Your>cxGridDBTableView.DataController.Filter.CreateValueList; vFilterList.Load(<Your>cxGridDBTableView<этого поля>.Index); <Your>cxComboBox.Properties.Items.Clear; for i := 0 to vFilterList.Count - 1 do <Your>cxComboBox.Properties.Items.Add(vFilterList.Items[i].DisplayText); FreeAndNil(vFilterList); end; |
|