Reputation: 4233
Can anyone help me how to access for example value of first cell in 4th column?
a b c d
1 2 3 5
g n m l
for example, how to access to value d from a data table structured and filled as above?
Upvotes: 96
Views: 350205
Reputation: 343
Assuming that the values in "SomeColumnName" are unique / distinct and that the value you are looking for in "NameOfColumnWhereIsTheValueYouLookingFor" is "Double".
double SomeDoubleValue = (double)SomeDataTable.Select("SomeColumnName = ValueWhichDetermineTheRowLocation").First()["NameOfColumnWhereIsTheValueYouLookingFor"]
Upvotes: 0
Reputation: 137
public V[] getV(DataTable dtCloned)
{
V[] objV = new V[dtCloned.Rows.Count];
MyClasses mc = new MyClasses();
int i = 0;
int intError = 0;
foreach (DataRow dr in dtCloned.Rows)
{
try
{
V vs = new V();
vs.R = int.Parse(mc.ReplaceChar(dr["r"].ToString()).Trim());
vs.S = Int64.Parse(mc.ReplaceChar(dr["s"].ToString()).Trim());
objV[i] = vs;
i++;
}
catch (Exception ex)
{
//
DataRow row = dtError.NewRow();
row["r"] = dr["r"].ToString();
row["s"] = dr["s"].ToString();
dtError.Rows.Add(row);
intError++;
}
}
return vs;
}
Upvotes: 1
Reputation: 38179
If you need a weak reference to the cell value:
object field = d.Rows[0][3]
or
object field = d.Rows[0].ItemArray[3]
Should do it
If you need a strongly typed reference (string in your case) you can use the DataRowExtensions.Field extension method:
string field = d.Rows[0].Field<string>(3);
(make sure System.Data is in listed in the namespaces in this case)
Indexes are 0 based so we first access the first row (0) and then the 4th column in this row (3)
Upvotes: 145
Reputation: 339
data d is in row 0 and column 3 for value d :
DataTable table;
String d = (String)table.Rows[0][3];
Upvotes: 7
Reputation: 3147
foreach(DataRow row in dt.Rows)
{
string value = row[3].ToString();
}
Upvotes: 7