Отобразить отдельные столбцы в dataGridView

202
24 июля 2018, 15:50

Через oledb загружаю данные с exel. В dataGridView нужны только отдельные столбцы. Подскажите пожалуйста, как их вывести.

dataGridView1.DataSource = dt// отображает  всю БД
dataGridView1.DataSource = dt.Columns[0] // ничего не отображает
Answer 1

Можете попробовать после привязки скрыть ненужные столбцы с помощью Visible:

dataGridView1.DataSource = dt;
dataGridView1.Columns[1].Visible = false;
dataGridView1.Columns[2].Visible = false;
//и т.д. 

возможно, будет удобнее обращаться к столбцам по имени:

//Скрываем все
foreach(DataGridViewColumn column : dataGridView1.Columns)
    column.Visible = false;
//показываем нужное
var visibleColumnNames = new [] {"Column1", "Column2", ...};
foreach(var name : visibleColumnNames)
    dataGridView1.Columns[name].Visible = true;

Альтернативный вариант: удалить столбцы из источника данных. Если это DataTable, то с помощью Remove:

dt.Columns.Remove("Column1");
dt.Columns.Remove("Column2");
...
dataGridView1.DataSource = dt;    

Ваш код

dataGridView1.DataSource = dt.Columns[0] 

не сработает, т.к. сам по себе столбец корректным источником данных не является.

READ ALSO
Изменение кодировки строки C#

Изменение кодировки строки C#

Получаю строку из файла HTML и вывожу в консоль, но кодировка в виде иероглифовПытаюсь ее изменить следующим образом:

181
событие в метод - C#

событие в метод - C#

метод как результат должен возвращать данные из события (например формы WinForms) как упаковать событие в метод?

215
Запуск программы через планировщик

Запуск программы через планировщик

В общем сделал программу и хочу ее повесить на планировщик задач Windows

224
Имперсонализация в C#

Имперсонализация в C#

В общем, мне нужно обратится к сетевому ресурсу под другой учеткой

176