将值添加到特定的DataTable单元格

我想知道是否可以将值添加到特定的DataTable单元格?

假设我有一个现有的dataTable,并且我添加了一个新列,如何在不覆盖现有列的行的情况下添加到新列的行?

据我所知,没有一种方法可以添加到特定的细胞(除非我错了)。

dt.Rows.Add(a, b, c, d) 

其中a,b,c和d是字符串值。 那么如果我只想添加到d列呢?

任何帮助,将不胜感激。

如果它是一个只想设置一个值的全新行,则需要添加整行,然后设置单个值:

 DataRow dr = dt.NewRow(); dr[3].Value = "Some Value"; dt.Rows.Add(dr); 

否则,您可以找到现有行并设置单元格值

 DataRow dr = dt.Rows[theRowNumber]; dr[3] = "New Value"; 

试试这个:

 dt.Rows[RowNumber]["ColumnName"] = "Your value" 

例如:如果要将值5(数字5)添加到第一行和列名称“index”,则可以执行此操作

 dt.Rows[0]["index"] = 5; 

我相信DataTable行以0开头

我认为你不能这样做,但至少你可以更新它。 要编辑DataTable中的现有行,您需要找到要编辑的DataRow,然后将更新的值分配给所需的列。

例,

 DataSet1.Tables(0).Rows(4).Item(0) = "Updated Company Name" DataSet1.Tables(0).Rows(4).Item(1) = "Seattle" 

来源于此

您的意思是要添加新行并仅将数据放入某列中? 请尝试以下方法:

 var row = dataTable.NewRow(); row[myColumn].Value = "my new value"; dataTable.Add(row); 

但是,由于它是一个数据 ,每列中总会有某种数据。 它可能只是DBNull.Value而不是您想象的任何数据类型。

如果有人正在寻找更新的正确语法,请尝试以下方法:

 Example: dg.Rows[0].Cells[6].Value = "test";