Ajout d'une ligne dans un datagrid Manuellement [Résolu]

Signaler
Messages postés
16
Date d'inscription
mercredi 29 juin 2005
Statut
Membre
Dernière intervention
18 février 2008
-
Messages postés
16
Date d'inscription
mercredi 29 juin 2005
Statut
Membre
Dernière intervention
18 février 2008
-
Bonjour!

J'utilise Asp .net aveac le langage C#. Et je voudrai savoir s'il est possible d'ajouter une ligne dans un datagrid sans passer par une table de base de données, ni DataSet, ni dataAdapter...

Car j'ai un datagrid( dataGridConnaissance), dans lequel je voudrai ajouter 4 données saisient dans des TextBox lors de l'événement click sur un bouton situés dans la même page.

Merci d'avance.

4 réponses

Messages postés
62
Date d'inscription
vendredi 7 novembre 2003
Statut
Membre
Dernière intervention
3 juillet 2009

Tiens voici une partie de mon code.
Cependant cette façon a l'inconvenient de faire monter le poids de la page dû au viewstate.
Donc si tu as bcp de donnée essaie avec les variables sessions.

private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
DataTable dt = new DataTable();

//Creation des Colonnes avec leur titre
DataColumn dt_col1 = new DataColumn();
dt_col1.DataType = typeof(string);
dt_col1.ColumnName = "Le Nom de ta colonne";
dt.Columns.Add(dt_col1);

dg.DataSource = new DataView(dt);
dg.DataBind();

ViewState.Add("dt", dt);

}
}


public void testdt()
{
try
{
//Creation des lignes
DataRow dr;
dr = ((DataTable)ViewState["dt"]).NewRow();
dr["le nom de ta row"] = texbox.Text;
((DataTable)ViewState["dt"]).Rows.Add(dr);
dg.Visible = true;
dg.DataSource = new DataView((DataTable)ViewState["dt"]);
dg.DataBind();


}
catch(Exception ex)
{
Response.Write(ex.Message);
}

}

Voila j'espere que ca t'aidera
Messages postés
62
Date d'inscription
vendredi 7 novembre 2003
Statut
Membre
Dernière intervention
3 juillet 2009

Salut
Tu peux ajouter un ligne dans ton datagrid avec les valeurs de tes textbox.
Il te suffit de creer une datatable avec une datarow et unedatacolumn
Tu defini ensuite une nouvelle ligne a laquelle tu affectes les valeurs de tes texbox.
Tu mets le tout dans un dataset avec lequel tu bind ton datagrid.

Voila j'espere avoir été assez clair.
Bon dev
Messages postés
16
Date d'inscription
mercredi 29 juin 2005
Statut
Membre
Dernière intervention
18 février 2008

Salut!

Merci pour ta réponse...
J'ai effectivement compris tes explications mais il faut dire aussi que j'ai remarqué que toi aussi tu t'étais posé cette question...
Cependant comme toi j'arrive la première fois, mais je ne sais pas comment faire pour sauvegarder les lignes précédentes lors d'une nouvelle insertion(je sais que c'est avec un ViewState mais je ne sais pas comment m'y prendre).

Merci d'avance.
Messages postés
16
Date d'inscription
mercredi 29 juin 2005
Statut
Membre
Dernière intervention
18 février 2008

Super!!!

Merci, j'ai essayé et effectivement ça fonctionne... (Pour le moment je vais utiliser les viewState car je n'ai pas beaucoup de donnée) .
Tu m'as enlevé une épine du pied...

Encore Merci.