Загружаю в DataGridView
таблицу из Excel. Хочу сделать сортировку по выбору из ComboBox
.
OpenFileDialog ofd = new OpenFileDialog();
//Задаем расширение имени файла по умолчанию.
ofd.DefaultExt = "*.xls;*.xlsx";
//Задаем строку фильтра имен файлов, которая определяет
//варианты, доступные в поле "Файлы типа" диалогового
//окна.
ofd.Filter = "Excel Sheet(*.xlsx)|*.xlsx";
//Задаем заголовок диалогового окна.
ofd.Title = "Выберите документ для загрузки данных";
ExcelObj.Application app = new ExcelObj.Application();
ExcelObj.Workbook workbook;
ExcelObj.Worksheet NwSheet;
ExcelObj.Range ShtRange;
System.Data.DataTable dt = new System.Data.DataTable();
if (ofd.ShowDialog() == DialogResult.OK)
{
label1.Text = ofd.FileName;
workbook = app.Workbooks.Open(ofd.FileName, Missing.Value,
Missing.Value, Missing.Value, Missing.Value, Missing.Value,
Missing.Value, Missing.Value, Missing.Value, Missing.Value,
Missing.Value, Missing.Value, Missing.Value, Missing.Value,
Missing.Value);
//Устанавливаем номер листа из котрого будут извлекаться данные
//Листы нумеруются от 1
NwSheet = (ExcelObj.Worksheet)workbook.Sheets.get_Item(1);
ShtRange = NwSheet.UsedRange;
for (int Cnum = 1; Cnum <= ShtRange.Columns.Count; Cnum++)
{
dt.Columns.Add(
new DataColumn((ShtRange.Cells[1, Cnum] as ExcelObj.Range).Value2.ToString()));
}
dt.AcceptChanges();
string[] columnNames = new String[dt.Columns.Count];
for (int i = 0; i < dt.Columns.Count; i++)
{
columnNames[0] = dt.Columns[i].ColumnName;
}
for (int Rnum = 2; Rnum <= ShtRange.Rows.Count; Rnum++)
{
DataRow dr = dt.NewRow();
for (int Cnum = 1; Cnum <= ShtRange.Columns.Count; Cnum++)
{
if ((ShtRange.Cells[Rnum, Cnum] as ExcelObj.Range).Value2 != null)
{
dr[Cnum - 1] =
(ShtRange.Cells[Rnum, Cnum] as ExcelObj.Range).Value2.ToString();
}
}
dt.Rows.Add(dr);
dt.AcceptChanges();
}
dataGridView1.DataSource = dt;
app.Quit();
}
else
System.Windows.Forms.Application.Exit();
}
Сортировка
if (comboBox1.SelectedIndex == 0)
{
dataGridView1.Sort(dataGridView1.Columns["Column1"], ListSortDirection.Descending);
}
Пишет,что dataGridView1
пустой, как обозначить,что таблицу берем из Excel?
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
У меня есть следующая задача: необходимо в синхронной манере отправить запрос через шину данных и дождаться ответа, после чего вернуть управление...
В общем, есть 2 строки, формат которых нужно проанализировать на похожесть