Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
WinForms: ListBox DataSource
|
|||
|---|---|---|---|
|
#18+
Чего то я не могу врубится... WinForms приложение. Есть ListBox lboxBvd. В дизайнере (VS2003.NET) я поставил в DisplayMember - supplier_desc, а в ValueMember - pk_supplier. К листбоксу прикручиваю DataSource: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Вот. Под MSSQL 2000 всё работает ок, а когда работаю с Oracle, в листбоксе вместо названий поставщиков появляется куча "System.Data.DataRowView"... пробовал ещё вот так: Код: plaintext 1. Sql server это тоже проглатывает, а Oracle не помогает. Для соединения с Oracle использую .NET Provider "MSDAORA.1". Где тут грабли? Почему под sql server всё пашет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2004, 18:16 |
|
||
|
WinForms: ListBox DataSource
|
|||
|---|---|---|---|
|
#18+
Разрулил... напишу потом как, сейчас времени нет :) Или у меня глюки, или у маздайского .NET провайдера для Oracle кривой DataAdapter. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2004, 20:39 |
|
||
|
WinForms: ListBox DataSource
|
|||
|---|---|---|---|
|
#18+
Обещал написать, так что если кому интересно, вот чего я сделал. 1) Использовал OleDbDataReader вместо OleDbDataAdapter и вернул результат запроса как ArrayList, а не DataSet. 2) Создал struct который отображал ListBox.ValueMember и ListBox.DisplayMember. 3) Создал массив этих структур и заполнил их данными 4) Прикрутил этот массив к моему листбоксу как DataSource. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Всё работает. Я так и не понял, где грабли были. Самое интересное, что код в первом посте работает прекрасно с sql2000, а с Oracle вот такие траблы были... Может быть действительно в OleDbDataAdabter бага какая сидит...? Или я туплю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.09.2004, 13:44 |
|
||
|
WinForms: ListBox DataSource
|
|||
|---|---|---|---|
|
#18+
попытался воспроизвести твою ситуацию Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. если указать DisplayMember="F1" (т.е. в верхнем регистре )- всё ОК --- если мне не изменяет память, Oracle названия таблиц/полей по умолчанию возвращает в ВЕРХНЕМ (UPPER) регистре. - а это существенно для ListBox как выход - переустанавливать названия динамически, например для DisplayMember Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.09.2004, 14:13 |
|
||
|
WinForms: ListBox DataSource
|
|||
|---|---|---|---|
|
#18+
Вот блин, надо же! Я когда с этой штукой боролся, часа четыре убил, и мне в голову не пришло, что это case sensitivity :). Спасибо, буду знать! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.09.2004, 14:35 |
|
||
|
WinForms: ListBox DataSource
|
|||
|---|---|---|---|
|
#18+
и еще одна feature (уже котрый раз, блин) иенять нужно так: Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.09.2004, 14:36 |
|
||
|
|

start [/forum/topic.php?fid=20&fpage=1005&tid=1438352]: |
0ms |
get settings: |
8ms |
get forum list: |
25ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 357ms |

| 0 / 0 |
