使用第一行作为列标题的数据集,将复选框第1列下移
本文关键字:数据集 1列 标题 复选框 一行 | 更新日期: 2023-09-27 17:51:21
我有数据集,我从Excel文件填充:
OleDbConnection conn;
OleDbDataAdapter command;
conn = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;Data Source='" + filePath + " ';Extended Properties=Excel 8.0; ");
conn.Open();
firstSheetName = GetFirstSheet(conn);
command = new OleDbDataAdapter("select * from [" + firstSheetName + "]", conn);
command.TableMappings.Add("Table", "Table");
dtSet = new DataSet();
command.Fill(dtSet);
dgvInputFile.DataSource = dtSet.Tables[0];
我使用excel文件的第一行作为列标题。我正在添加复选框列:
dtSet.Tables[0].Columns.Add(new DataColumn("Some header", typeof(bool)));
但是复选框列的标题将列1行向下推,datagridview有这种格式。
Some header | header 1 | header 2
--------------------------------------
checkboxcell | some value | some value
checkboxcell | some value | some value
checkboxcell | some value | some value
checkboxcell <-- Unwanted checkboxcell !!!
如何添加从第二行开始的复选框列,或包含dataset.Rows.Count - 1
元素?
最后一行的意外复选框可以是DataGridView.AllowUserToAddRows
属性设置为true
(默认)的结果,这将为输入添加新行
try set AllowUserToAddRows
to false
for dgvInputFile
dgvInputFile.RowCount
)中的行数等于dataset.Rows.Count + 1