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

killysui 16 Messages postés mercredi 29 juin 2005Date d'inscription 18 février 2008 Dernière intervention - 13 avril 2006 à 14:49 - Dernière réponse : killysui 16 Messages postés mercredi 29 juin 2005Date d'inscription 18 février 2008 Dernière intervention
- 13 avril 2006 à 17:01
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.
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Tofetlui 62 Messages postés vendredi 7 novembre 2003Date d'inscription 3 juillet 2009 Dernière intervention - 13 avril 2006 à 16:45
3
Merci
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

Merci Tofetlui 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 84 internautes ce mois-ci

Commenter la réponse de Tofetlui
Tofetlui 62 Messages postés vendredi 7 novembre 2003Date d'inscription 3 juillet 2009 Dernière intervention - 13 avril 2006 à 16:02
0
Merci
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
Commenter la réponse de Tofetlui
killysui 16 Messages postés mercredi 29 juin 2005Date d'inscription 18 février 2008 Dernière intervention - 13 avril 2006 à 16:29
0
Merci
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.
Commenter la réponse de killysui
killysui 16 Messages postés mercredi 29 juin 2005Date d'inscription 18 février 2008 Dernière intervention - 13 avril 2006 à 17:01
0
Merci
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.
Commenter la réponse de killysui

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.