Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Обновление данных грида / 7 сообщений из 7, страница 1 из 1
02.05.2007, 12:31
    #34499290
Обновление данных грида
Всем привет!
Нужно решить такую проблемку, но вариантов пока нет. Может быть у кого-нибудь есть идеи?
Требуется организовать обновление данных грида таким образом, чтобы не происходило его зависания, изменение фокуса выделения. Проще говоря пользователь работает в гриде и в on-line режиме данные грида поддерживаются в актуальном состоянии, скажем раз в несколько минут, добавляются или изменяются строки даных, отредактированные другими пользователями. Как проще организовать подобную задачу?
Использовать метод адаптера update для подобной задачи не удается, так как при этом проявляются описанные выше недостатки.
Спасибо за подсказки!
Fm1.1, грид DevExpress
...
Рейтинг: 0 / 0
02.05.2007, 15:38
    #34499899
Обновление данных грида
Ни у кого нет вариантов?
...
Рейтинг: 0 / 0
02.05.2007, 21:14
    #34500612
Май
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление данных грида
А в чем сложность? Можно писать и без адаптеров, просто SQLCOMMAND.
...
Рейтинг: 0 / 0
02.05.2007, 21:42
    #34500643
Май
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление данных грида
А в чем сложность? Можно писать и без адаптеров, просто SQLCOMMAND.
...
Рейтинг: 0 / 0
03.05.2007, 08:56
    #34501041
Stegazifals
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление данных грида
А если попробовать так.
запомнить фокус
Асинхронным режимом (FW2) считывать таблицу
в Ф. обратного вызова делать подмену данных и востанавливать фокус.?
...
Рейтинг: 0 / 0
03.05.2007, 09:46
    #34501167
Обновление данных грида
StegazifalsА если попробовать так.
запомнить фокус
Асинхронным режимом (FW2) считывать таблицу
в Ф. обратного вызова делать подмену данных и востанавливать фокус.?
Да, я тоже так думал. Но это немного не то. Грид несколько хитрый. Там данные сгруппированы по одному или нескольким полям. Придется запоминать еще какая группа была развернута, получится как мультик, несколько неудобно. Если бы только добавление шло, все было бы просто, а вот как изменения отследить не знаю. Ну ладно, будем думать дальше. Если у кого-нить возникнет мысля, буду благдарен.
А может асинхронно в фоне построковую проверку выполнять попробую.
Спасибо!
...
Рейтинг: 0 / 0
04.05.2007, 11:42
    #34504436
Logrus_ii3
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление данных грида
АлександрIIИспользовать метод адаптера update для подобной задачи не удается, так как при этом проявляются описанные выше недостатки.А разве Update() адаптера способен вносить изменения в DataTable? Я думал, что этот метод "переносит" изменения из DataTable в базу данных. А для того, чтобы обновить данные из базы в DataTable, нужно использовать метод Fill(). Только он требует наличия PrimaryKey.

Я сейчас как раз разбираюсь с подобной проблемой. У меня следующая схема:
Есть адаптер, есть DataTable, есть BindingSource. Адаптером заполняем таблицу, BindingSource.DataSource = таблица. А потом просто привязываем грид к BindingSource. На этом этапе про грид можно забыть. Наша задача - поддерживать в DataTable данные в актуальном состоянии. Для этого, когда нужно, можно делать адаптер.Fill(таблица).

Этот подход я представляю себе примерно так:
У нас есть две сущности. Это "живая" база данных и копия нужной таблицы в памяти компьютера пользователя. Если где-то происходят изменения, их нужно "дублировать". Если пользователь изменяет данные (в DataTable), то изменения из DataTable нужно перенести в базу (адаптер.Update()). Если данные были изменены в базе, то нужно эти изменения отразить в DataTable, я пока делаю это adapter.Fill().
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Обновление данных грида / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]