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

Posted

技术标签:

【中文标题】将值添加到特定的 DataTable 单元格【英文标题】:Adding values to specific DataTable cells 【发布时间】:2012-09-06 02:44:44 【问题描述】:

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

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

据我所知,没有添加到特定单元格的方法(除非我错了)。

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

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

任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

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

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

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

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

【讨论】:

dr[3] = "New Value"; 不需要“.Value”。【参考方案2】:

试试这个:

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

例如:如果您想将值 5(数字 5)添加到第一行和列名称“索引”,您可以这样做

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

我相信 DataTable 行以 0 开头

【讨论】:

【参考方案3】:

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

例子,

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

SOURCE HERE

【讨论】:

【参考方案4】:

你的意思是你想添加一个新行并且只把数据放在某一列?请尝试以下操作:

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

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

【讨论】:

【参考方案5】:

如果有人像我一样正在为此寻找更新的正确语法,请尝试以下操作:

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

【讨论】:

以上是关于将值添加到特定的 DataTable 单元格的主要内容,如果未能解决你的问题,请参考以下文章

VBA代码将值从一个单元格复制到特定列

将值写入python中熊猫工作表中的特定单元格

将样式单元格从数据库添加到 DataTable

如何更改 JQuery.DataTable 中特定单元格的背景?

如何在dataTable的单个单元格中添加多个json值

Javascript,将值传递给新添加的表格行/单元格