[Asp .Net 1.1] Ajouter manuellement une ligne à un datagrid
Bonjour,
J'aimerais ajouter dynamiquement une ligne de titre à mon datagrid (dg), mais cette ligne ne fait qu'une colonne alors que mon datagrid en fait plusieurs.
Je crée donc un dataset (ds),
Je crée une datatable dtTitre à laquelle j'affecte une nouvelle ligne (drTitre) avec un nom de colonne,
Je remplis cette "cellule" avec du texte de type string,
Je mets ma dtTitre dans mon ds,
Puis je crée une nouvelle datatable (dtProc) que je remplis avec une procédure stockée
je mets ma dtProc dans mon ds.
Et enfin, j'alimente mon dg avec le ds.
Voici le code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
DataSet ds = new DataSet();
DataTable dt = new DataTable();
DataTable dtTitre1 = new DataTable();
dtTitre1.Columns.Add("titre");
DataRow drTitre1;
drTitre1 = dtTitre1.NewRow();
drTitre1["titre"] = "ceci est le titre";
dtTitre1.Rows.Add(drTitre1);
ds.Tables.Add(dtTitre1);
// Ici j'alimente dtProc avec ma procstock
ds.Tables.Add(dtProc );
dg.DataSource = ds;
dg.DataBind(); |
Après le bind, j'ai ceci en erreur .Net :
Citation:
Aucun champ ou propriété 'NomDuChamp1ProcStock' n'a été trouvé dans la source de données sélectionnée.
(Pour info, le champ existe dans la proc stock puisque sans l'ajout "manuel" de la ligne de titre, mon dg affiche bien le résultat de la requête).
Le fait que la première DataTable fasse une colonne et la seconde plusieurs colonnes peut-il gêner ?
N'utiliserais-je pas la bonne méthode ?