26

特定の DataTable セルに値を追加できるかどうか疑問に思っていますか?

既存の dataTable があり、新しい列を追加するとします。既存の列の行を上書きせずに新しい列の行に追加するにはどうすればよいでしょうか?

私の知る限り、特定のセルに追加する方法はありません (私が間違っていない限り)。

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

ここで、a、b、c、および d は文字列値です。では、d 列に追加したい場合はどうすればよいでしょうか。

どんな助けでも大歓迎です。

4

5 に答える 5

26

1 つの値のみを設定したい完全に新しい行である場合は、行全体を追加してから、個々の値を設定する必要があります。

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

それ以外の場合は、既存の行を見つけてセル値を設定できます

DataRow dr = dt.Rows[theRowNumber];
dr[3] = "New Value";
于 2012-09-06T02:49:54.247 に答える
13

これを試して:

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

例: 値 5 (数値 5) を最初の行と列名 "index" に追加する場合は、次のようにします。

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

DataTable の行は 0 から始まると思います

于 2015-06-16T05:33:53.953 に答える
1

それはできないと思いますが、少なくとも更新することはできます。DataTable の既存の行を編集するには、編集する DataRow を見つけて、更新された値を目的の列に割り当てる必要があります。

例、

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

ソースはこちら

于 2012-09-06T02:48:25.137 に答える
0

新しい行を追加して、特定の列にのみデータを入れたいということですか? 次のことを試してください。

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

ただし、これはデータテーブルであるため、常にすべての列に何らかのデータが存在します。DBNull.Value想像しているデータ型の代わりになるかもしれません。

于 2012-09-06T02:47:35.377 に答える