2008-12-22 5 views

Répondre

7

Vous devez spécifier la ligne de que vous voulez obtenir la valeur. Je serais probablement plus le long de la table.Rows [index] ["GrossPerPop"]. ToString()

+0

Ok, Merci, j'avais peur de cela. – Xaisoft

+0

Pourquoi avoir peur? Comment auriez-vous autrement la valeur? – configurator

+0

Je sais. Juste penser à soi-même. – Xaisoft

4

Vous devez utiliser un DataRow pour obtenir une valeur; les valeurs existent dans les données, pas dans les en-têtes de colonne. Dans LINQ, il existe une méthode d'extension qui pourrait aider:

string val = table.Rows[rowIndex].Field<string>("GrossPerPop"); 

ou sans LINQ:

string val = (string)table.Rows[rowIndex]["GrossPerPop"]; 

(en supposant que les données est- une chaîne ... sinon, utilisez ToString())

Si vous avez un DataView plutôt que d'un DataTable, puis les mêmes œuvres avec un DataRowView:

string val = (string)view[rowIndex]["GrossPerPop"]; 
2

@Marc Gravell .... Votre réponse a en fait la réponse à cette question. Vous pouvez accéder aux données de la vue de données ci-dessous

string val = (string)DataView[RowIndex][column index or column name in double quotes] ; 
// or 
string val = DataView[RowIndex][column index or column name in double quotes].toString(); 
// (I didn't want to opt for boxing/unboxing) Correct me if I have misunderstood. 
0

pour tous ceux qui en vb.NET:

Dim dv As DataView = yourDatatable.DefaultView 
dv.RowFilter ="query " 'ex: "parentid = 1 " 
for a in dv 
    dim str = a("YourColumName") 'for retrive data 
next 
Questions connexes