使用Linq从DataGridView's Specific Rows获取数据表
本文关键字:Specific Rows 获取 数据表 Linq DataGridView 使用 | 更新日期: 2023-09-27 18:13:07
我有一个datagridview,我想使一个数据表从它与一些条件。例如,当用户双击一行时,我想使该行成为一个数据表,或者datagridview有一个checkboxcell,我想要一个来自该网格的数据表,其中检查列被选中。我怎么用linq来做呢?有什么办法吗?
我得到一个数据表与sqldataadapter从数据库,并绑定到datagridview与
dataGridView.DataSource = myDataTable;
我有一个工作代码,当用户双击一个单元格在datagridview,我得到行数据表像这样
foreach (DataGridViewColumn column in dataGridView.Columns)
dataTable.Columns.Add(column.Name, column.ValueType);
dataTable.Rows.Add();
for (int j = 0; j < dataGridView.Columns.Count; j++)
{
dataTable.Rows[0][j] = dataGridView.Rows[e.RowIndex].Cells[j].Value;
}
我只是想知道,如果有一个linq的方法,让这个结果一个数据表,像
dataTable =dataGridView.Rows.Cast<DataGridViewRow>().Where(f=>f.Index==e.RowIndex) //rowindex is the double clicked rows index here
下面的代码将帮助您入门:
DataTable dt = new DataTable();
foreach (DataGridViewColumn column in dataGridView1.Columns)
dt.Columns.Add(column.Name);
DataGridViewSelectedRowCollection row = this.dataGridView1.SelectedRows;
foreach (DataGridViewRow dr in row)
dt.Rows.Add(dr);