Datatable+datagridview

Тема в разделе ".NET", создана пользователем Balda, 27 янв 2010.

  1. Balda

    Balda Гость

    MS VS Studio 2008 C#
    Данные из БД загружаются в DataTable, к-й служит источником данных для DataGridView.
    При первой загрузке данных в таблицу всё хорошо.
    Но если перед следующей загрузкой данных:
    Код (Text):
    table.Clear();
    table.Columns.Clear();
    SqlDataAdapter1.Fill(table);
    пользователь отсортирует строки в гриде по какому-либо столбцу, то вылетает сообщение вида: "Object is not set to an instance of an object".

    Если же изменить код так:
    Код (Text):
    table.Reset();
    SqlDataAdapter1.Fill(table);
    то таблица заполняется данными и привязка таблицы к гриду сохраняется, но почему-то не отображаются строки в гриде.

    Вопрос: почему так и что с этим делать?
     
  2. Conkistador

    Conkistador Гость

    Попробуйте очистить DataSource у Вашего DataGridView перед обновлением данных.

    Код (Text):
    DataGridView1.DataSource = null;
    table.Clear();
    table.Columns.Clear();
    SqlDataAdapter1.Fill(table);
    DataGridView1.DataSource = table;
     
  3. Balda

    Balda Гость

    Нет. Не в привязке дело.
    Ошибка возникает на этой строке:
    Код (Text):
    SqlDataAdapter1.Fill(table);
    В принципе проблема решана так: создаю каждый раз новую таблицу.
    Тогда никаких ошибок не наблюдается.
     

Поделиться этой страницей