powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / азы, обновление datasource
4 сообщений из 4, страница 1 из 1
азы, обновление datasource
    #37406150
vakarev_dmitri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день

В общем задача такая, есть несколько филиалов, grid показывает статистику по филиалам и общую (суммарную) за месяц
Запросы разные (разное кол-во столбцов), необходимо выводить данные в grid

Проблема в том, что если обновляется DataSet, то Grid не обновляет количество столбцов (Index was out of range)
в общем gridControl.RefreshDataSource(); у меня не работает или я не правильно понял его назначение..
Использую dev express 2009.3.4

Раньше делал так
Код: plaintext
1.
2.
  gridControl.DataSource = null;
  gridControl.DataSource = ds.Tables[0];
но сейчас думаю, что это не правильно.. подскажите как лучше сделать
если так делать можно, то намекните плиз..

и еще попутно вопрос, я делаю примерно так
Код: plaintext
1.
2.
3.
4.
5.
6.
  gridViewRegister.Columns[colDepartment].Caption = "Филиал";

  gridViewRegister.Columns[colDate].Caption = "Отчётный месяц";
  gridViewRegister.Columns[colDate].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
  gridViewRegister.Columns[colDate].DisplayFormat.FormatString = "{0:MMMM yyyy}";
  gridViewRegister.Columns[colDate].AppearanceCell.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far;
правильно ли я делаю? если таблиц всего 2 может лучше использовать дизайнер

Спасибо,
Дмитрий
...
Рейтинг: 0 / 0
азы, обновление datasource
    #37406189
vakarev_dmitri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
обновление в dev express gridcontrol'а можно сделать вот так, но правильно ли это?
Код: plaintext
1.
2.
  gridViewRegister.Columns.Clear();
  gridControlRegister.DataSource = dsSelectedRowsRegister.Tables[0];
...
Рейтинг: 0 / 0
азы, обновление datasource
    #37419950
LjAPb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vakarev_dmitri,

Не знаю, как в DevExpress, но в обычном DataGridView после обновления Dataset достаточно
Код: plaintext
dataGridView1.DataSource = dataset.Tables[0];

Можно так попробовать:
Код: plaintext
1.
2.
gridViewRegister.DataSource = null;
gridViewRegister.Columns.Clear();
gridViewRegister.DataSource = ds.Tables[0];

------------

По моему мнению, лучше
Код: plaintext
1.
2.
3.
4.
gridViewRegister.Columns[colDepartment].Caption = "Филиал";
gridViewRegister.Columns[colDate].Caption = "Отчётный месяц";
gridViewRegister.Columns[colDate].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
gridViewRegister.Columns[colDate].DisplayFormat.FormatString = "{0:MMMM yyyy}";
gridViewRegister.Columns[colDate].AppearanceCell.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far;
чем дизайнером
...
Рейтинг: 0 / 0
азы, обновление datasource
    #37419955
LjAPb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если таблиц всего 2, может лучше 2 gridControl создать и показывать их в зависимости от отображаемой таблицы. Чтоб не перерисовывать постоянно. Привязать через BindingSource, и просто обновлять Dataset.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / азы, обновление datasource
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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