Продолжение Глюк VFP8 или я .. | |
---|---|
Олег Борисович |
Повторно здравствуйте колееги!
При переводе проекта из VFP7 в VFP8+SP1 столкнулся со следующей проблемой. Есть объект COMBO1 на форме свойства этого объекта RowSourse = Текст1,Текст2 Style = 2 - DropdownList При попытке установить свойство DisplayValue = 1 - происходит вывод значения 2089878894 Причем если все-таки поставить значение 1 то при повторном редактировании этого объекта устанавливается значение DisplayValue = 208987889 При показе формы COMBO1 в начальный момент пуст, значения Текст1,Текст2 нужно выбирать При установке DisplayValue = "Текст1" происходит тоже-самое. Установить свойство ControlSourse="Текст1" не представляется возможным, т.к допустимы только имена полей. Как быть? Как в COMBO1 установить сразу первое знечение из RowSourse Заранее благодарен. |
Re: Продолжение Глюк VFP8 или я .. | |
---|---|
Владимир Максимов Сообщений: 14100 Откуда: Москва Дата регистрации: 02.09.2000 |
Для начала, надо всегда указывать алиас таблицы
RowSourse = Алис.Текст1,Текст2 RowSourseType = 6 - Fields Именно так, алиас только у первого поля. Для установки выбранного значения надо контролировать не то, что отображается, а именно то, что выбирается! Так вот, в ComboBox всегда отображается значение первого поля (столбца) списка (DisplayValue), но вот выбирается значение того столбца (поля), номер которого указан в свойстве BoundColumn. Если выбранное значение имеет числовой тип данных, то в зависимости от значения BoundTo это может быть либо просто порядковый номер элемента в списке (BoundTo = .F.), либо собственно значение поля (BoundTo = .T.) Выбранное значение записывается в свойство Value. Соответственно, если Вы хотите задать значение по умолчанию, то и надо изменить значение Value. ControlSource - это куда надо поместить выбранное значение. |
Re: Продолжение Глюк VFP8 или я .. | |
---|---|
Igor Korolyov Автор Сообщений: 34580 Дата регистрации: 28.05.2002 |
Hi, Владимир!
Я так понял этот комбо не к таблице привязан, а просто список значений содержит т.е. RowSourceType = 1 Вообще конечно что-то очень уж странное описано Выбрать первый элемент всегда можно по Combo.ListIndex = 1 ------------------ WBR, Igor |
© 2000-2024 Fox Club  |