Remplissage DataGrid incompréhensible...sniff...HELP PLEASE :'(

sphaxslayer Messages postés 216 Date d'inscription mardi 5 avril 2005 Statut Membre Dernière intervention 17 septembre 2008 - 2 juin 2005 à 14:02
sphaxslayer Messages postés 216 Date d'inscription mardi 5 avril 2005 Statut Membre Dernière intervention 17 septembre 2008 - 2 juin 2005 à 15:50
Salut tout l'monde, j'suis vraiment vraiment vraiment pommé...j'comprends décidément rien au win Datagrid...c pas possible...j'avais fais un truc qui marchait, puis j'ai du supprimer une ligne par erruer, j'vois pas d'autre explications: un programme plante pas sans l'intervention humaine, et depuis plus rien...voilà mon code, si quelqu'un sait ou le problme peut-être, j'arrive vrament plus là...j'suis dessus depuis 2 jours, j'rame à mort...merci beaucoup!



private
void Bttn_LancerRech_Click(
object sender, System.EventArgs e)


{



// définition de la table MESSAGE et de ses colonnes du DataGrid si ce n'est pas déjà fait



// if (!dtaSet.Tables.Contains("MESSAGE"))



// {


dtaSet.Tables.Add("MESSAGE");


dtaSet.Tables["MESSAGE"].Columns.Add("MSG_ID");


dtaSet.Tables["MESSAGE"].Columns.Add("ENQ_TIME");


dtaSet.Tables["MESSAGE"].Columns.Add("FINAL_TIME");


dtaSet.Tables["MESSAGE"].Columns.Add("MSG_STATE");


dtaSet.Tables["MESSAGE"].Columns.Add("FAILURE_CODE");


dtaSet.Tables["MESSAGE"].Columns.Add("FAILURE_COMMENT");


dtaSet.Tables["MESSAGE"].Columns.Add("USER_DATA_0");



// rattachement du DataSet et de la table MESSAGE au DataGrid


DtaGrid_Result.DataSource = dtaSet;



// }



// on switch pour savoir quel type de recherche est demandé



switch (typeRech)


{



case ("Statut") :
if ((TxtBox_Express_NDA_Statut.Text != "") &&
/////////////////////////


((TxtBox_Express_NDA_Statut.Text == "0") ||
//// Pourrait être ////


(TxtBox_Express_NDA_Statut.Text == "1") ||
//// un peu plus ////


(TxtBox_Express_NDA_Statut.Text == "2") ||
//// proprement ////


(TxtBox_Express_NDA_Statut.Text == "3") ||
//// codé...? ////


(TxtBox_Express_NDA_Statut.Text == "4")
/////////////////////////


)


)


{


Cursor.Current = Cursors.WaitCursor;


Result = connex.getQueryResult("SELECT DQ.MSG_ID, DQ.ENQ_TIME, DQ.FINAL_TIME, DQ.MSG_STATE, DQ.FAILURE_CODE, DQ.FAILURE_COMMENT, DQ.USER_DATA_0 " +


"FROM DXCNT_QUEUE_DESC DQD, DXCNT_QUEUE DQ " +


"WHERE DQ.QUEUE = DQD.QUEUE " +


"AND DQ.USER_DATA_0 IS NOT NULL " +


"AND DQ.MSG_STATE = '" + TxtBox_Express_NDA_Statut.Text +


"' AND DQD.QUEUE = '" + ListBox_Interfaces.SelectedItem.ToString() +


"' ORDER BY MSG_ID");



for (
int i=0; i<20; i++)


{


DataRow row = dtaSet.Tables["MESSAGE"].NewRow();


row["MSG_ID"] = Result[i,0];


row["ENQ_TIME"] = Result[i,1];


row["FINAL_TIME"] = Result[i,2];


row["MSG_STATE"] = Result[i,3];


row["FAILURE_CODE"] = Result[i,4];


row["FAILURE_COMMENT"] = Result[i,5];


row["USER_DATA_0"] = null;



// ajout de la ligne au Datagrid et rafraîchissement de celui-ci


dtaSet.Tables["MESSAGE"].Rows.Add(row);


DtaGrid_Result.Refresh();


}


Cursor.Current = Cursors.Default;


}



else


{ // traitement erreur...
}



break;



case ("Mots Clefs") :
break;



case ("Texte Libre") :
break;


}


}

Merci si quelqu'un peut m'aider, je craque j'pige rien...:'(

"Un seul Être vous manque, et tout est dépeuplé..."
A voir également:

5 réponses

sphaxslayer Messages postés 216 Date d'inscription mardi 5 avril 2005 Statut Membre Dernière intervention 17 septembre 2008
2 juin 2005 à 15:21
bon ben en fait j'ai trouvé...j'suis bête, j'avais viré la ligne associant le DataMember...et oui et oui j'suis nouveau dans the datagrid's world :) voilà la ligne à rajouter si ca aide....


DtaGrid_Result.DataMember = "MESSAGE";

à rajouter après la ligne d'association au DtaSet :)

"Un seul Être vous manque, et tout est dépeuplé..."
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
2 juin 2005 à 15:28
mouaip... mais le plus simple serait d'utiliser un DataAdapter et un DataSet.

En 3 lignes, je fais la même chose ;)

Petite remarque à propos de :
if ((TxtBox_Express_NDA_Statut.Text != "") && /////////////////////////

((TxtBox_Express_NDA_Statut.Text == "0") || //// Pourrait être ////


(TxtBox_Express_NDA_Statut.Text == "1") || //// un peu plus ////


(TxtBox_Express_NDA_Statut.Text == "2") || //// proprement ////


(TxtBox_Express_NDA_Statut.Text == "3") || //// codé...? ////


(TxtBox_Express_NDA_Statut.Text == "4") /////////////////////////


)


)

remplace par :
if ((new System.Text.RegularExpressions.Regex("^[0-4]$")).IsMatch(TxtBox_Express_NDA_Status.Text) {...

Sébastien FERRAND

Blog : http://blogs.developpeur.org/sebmafate
</FO< body>
0
sphaxslayer Messages postés 216 Date d'inscription mardi 5 avril 2005 Statut Membre Dernière intervention 17 septembre 2008
2 juin 2005 à 15:37
Je te remercie mais en fait j'vais mettre une combobox, pour l'utilisateur ca lui évitera d'avoir à connaitre les correspondances de statuts :)
pour le dataadapter je sais pas faire, étant donné que je découvre les Datagrid...enfin là ca marche et vu qu'il ne s'agit que d'un affichage simple, est-ce bien utile de reprendre le code...? peut-être peser la lourdeur, qu'en penses-tu ? reprendre avec un dataAdapter sera plus rapide ou ca change rien ? merci en tous cas :)

"Un seul Être vous manque, et tout est dépeuplé..."
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
2 juin 2005 à 15:43
disons qu'avec un DataAdapter, tu passes tes paramètres... tu fais Fill(...), et c'est à jour.

Sébastien FERRAND

Blog : http://blogs.developpeur.org/sebmafate
</FO< body>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sphaxslayer Messages postés 216 Date d'inscription mardi 5 avril 2005 Statut Membre Dernière intervention 17 septembre 2008
2 juin 2005 à 15:50
ok....en gros, ca fait le même traitement, mais c'eut été moins long à coder merci en tous cas ! je l'saurais pour la prochaine fois :)


tu saurais pas par hasard comment faire pour que les colonnes prennent la taille du texte qu'elles contiennent, et qu'elle remplisse la largeur totale de la grille...?

"Un seul Être vous manque, et tout est dépeuplé..."
0
Rejoignez-nous