datatable的select()结果直接修改,会体现在表上

时间:2024-04-21 15:53:40

如果你只是要修改DataTable里的DataRow的话没有必要找到它的行号,直接在Select后得到的DataRow上修改就行了,它的修改会直接反映到DataTable上(其实就是直接修改了DataTable上的DataRow,这和数据库不一样不要弄混了),代码如下

private void button1_Click(object sender, EventArgs e)

{

DataTable dataTable = new DataTable();

dataTable.Columns.Add("ID");

dataTable.Columns.Add("Name");

for (int i = 1; i < 5; i++)

{

dataTable.Rows.Add(new object[] { i, i + 1000 });

}

DataRow[] dataRows = dataTable.Select("id > 2");

for (int i = 0; i < dataRows.Length; i++)

{

dataRows[i].ItemArray = new object[] { i + 100, i + 5000 };

}

}