как в Detailcontrol указать два объекта
в таблице есть поля
ID - код пользователя
Date_Enter - дата ввода записи
Требуется создать отчет по некоторым пользователям (ID) из некоторого интервала дат (Data_Enter)
В диалоговой форме создаю:
- CheckedListBox1 с перечнем ID (в свойствах AutoFill=true, AutoFilter=true, DataColumn ссылается на поле ID)
- ComboBox1 и ComboBox2 (в свойствах AutoFill=true, AutoFilter=true, DataColumn ссылается на одно и то же поле Date_Enter)
Хочу чтобы в комбобоксах отражались только те даты, которые соответствуют выбранным ID. Для этого свойству DetailControl объекта CheckedListBox1 присваиваю значение ComboBox1. Для ComboBox1 цель достигнута. Как те же даты, что и в ComboBox1, отразить и в ComboBox2? В свойство DetailControl занести два значения ComboBox1 и ComboBox2 не выходит.
И как отражать даты в комбобоксе без времени?
Свойство Sorted объекта ComboBox1 устанавливаю в True, даты сортируются, но не в хронологическом порядке, а в алфавитном. (например дата 10.04.2011 будет меньше от даты 20.03.2012, т.к. 1<2, а то что 4>3, не учитывается)
ID - код пользователя
Date_Enter - дата ввода записи
Требуется создать отчет по некоторым пользователям (ID) из некоторого интервала дат (Data_Enter)
В диалоговой форме создаю:
- CheckedListBox1 с перечнем ID (в свойствах AutoFill=true, AutoFilter=true, DataColumn ссылается на поле ID)
- ComboBox1 и ComboBox2 (в свойствах AutoFill=true, AutoFilter=true, DataColumn ссылается на одно и то же поле Date_Enter)
Хочу чтобы в комбобоксах отражались только те даты, которые соответствуют выбранным ID. Для этого свойству DetailControl объекта CheckedListBox1 присваиваю значение ComboBox1. Для ComboBox1 цель достигнута. Как те же даты, что и в ComboBox1, отразить и в ComboBox2? В свойство DetailControl занести два значения ComboBox1 и ComboBox2 не выходит.
И как отражать даты в комбобоксе без времени?
Свойство Sorted объекта ComboBox1 устанавливаю в True, даты сортируются, но не в хронологическом порядке, а в алфавитном. (например дата 10.04.2011 будет меньше от даты 20.03.2012, т.к. 1<2, а то что 4>3, не учитывается)
Комментарии
У ComboBox2 поставьте AutoFill = false. Создайте обработчик ComboBox1.DataLoaded и напишите следующий код:
ComboBox2.FillData(CheckedListBox1);
Даты без времени можно отражать, перекрыв событие ComboBox.DrawItem:
Также надо установить свойства ComboBox - DrawMode=OwnerDrawFixed, DropDownStyle=DropDownList.