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 :
Après le bind, j'ai ceci en erreur .Net :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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();
(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).Aucun champ ou propriété 'NomDuChamp1ProcStock' n'a été trouvé dans la source de données sélectionnée.
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 ?
Partager