Échouer, c'est avoir la possibilité de recommencer de manière plus intelligente.
Twitter Blog Mon site
Mon article sur l'agilité
Oui je sait faire.
Pour en être sur, je vais te dire comment je fais :
on met un point marron(grace a la sourit) ou on souhaite que le point d'arret se fasse puis on va dans "déboguer" --> "pas à pas détaillé" par exemple.....
C'est bien ça ce que t'appelle :
merci d'avance!!Est ce que tu sais faire du debuggage avec des points d'arrêt ?
Échouer, c'est avoir la possibilité de recommencer de manière plus intelligente.
Twitter Blog Mon site
Mon article sur l'agilité
Ben comme j'ai déja dit, il s'arrête au niveau de :et m'affiche :
Code : Sélectionner tout - Visualiser dans une fenêtre à part SqlDataReader rader = command.ExecuteReader();
Je pense que le problème est au niveau de l'exécution de la requête. Est-ce qu'il faut mettre autre chose avant la requête ou après??Une exception non gérée du type 'System.InvalidCastException' s'est produite dans system.data.dll
Informations supplémentaires : L'objet doit implémenter IConvertible.
Quand je glisse ma souris sur " NomClient" de la ligne :et il me dit la chose suivante : "NomClient = {System.Windows.Forms.ComboBox}
Code : Sélectionner tout - Visualiser dans une fenêtre à part command.Parameters["@NomClt"].Value = NomClient;
T'as une idée car moi la je suis perdu, je vois pas du tout.
merci d'avance!!
NomClient c la ComboBox ?????
Il me semble qu'une combobox est une collection, donc si tu veux le faire passer pour un string ça ne va pas trop marcher. Il doit avoir un truc comme "Item" qui te renvoie l'élément, qui lui est de type Object, tu dois avoir la possibilité de faire dessus un ToString() ...
Je suis pas sure de ce que je dis maiss essaie de faire :
Vérifie qu'il te renvoie bien l'élément que tu veux ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part NomClient.Item.ToString()
Échouer, c'est avoir la possibilité de recommencer de manière plus intelligente.
Twitter Blog Mon site
Mon article sur l'agilité
"NomClient" est bien une combo.
Donc ce qui me donne :au lieu de
Code : Sélectionner tout - Visualiser dans une fenêtre à part command.Parameters["@NomClt"].Value = NomClient.Items.ToString();Certe il m'affiche plus l'erreur précédente mais il ne m'affiche quand même pas le statut du client choisit.
Code : Sélectionner tout - Visualiser dans une fenêtre à part command.Parameters["@NomClt"].Value = NomClient;
merci d'avance!!
Ben d'après le code que tu as mis c normal, puisque tt ce que tu fais c'est de récuperer dans un string le statut ... Y a pas de magie, le code ne fait que ce que tu lui dis de faire![]()
value c'est une string ni plus ni moins ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 string value = null; // On part du principe que le champ à l'index 0 est de type char dans la base if (rader.IsDBNull(0) == false) { value = rader["C_STATUCLT"].ToString(); }
Échouer, c'est avoir la possibilité de recommencer de manière plus intelligente.
Twitter Blog Mon site
Mon article sur l'agilité
Ok mais alors comment puis-je faire s'il te plais car je vois pas torp là. ??
merci d'avance!!
Échouer, c'est avoir la possibilité de recommencer de manière plus intelligente.
Twitter Blog Mon site
Mon article sur l'agilité
ok. Je comprend mieux.
En fait c'est le code que tu ma mis qui ma perturbé car c'étais le même que moi enfin bref peu importe.
j'ai fais un truc mais ça fonctionne pas.
J'ai rajouté
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
19
20
21
22
23
24
25
26
27
28
29
30
31 SqlConnection connection; SqlCommand command; connection = new SqlConnection("Data Source=DIST-5B8D87E3A9;Initial Catalog=DistribInfo;Integrated Security=SSPI"); connection.Open(); string requete = ("SELECT C_STATUCLT FROM CLIENT WHERE CLIENT.C_NOMCLT= @NomClt"); command = new SqlCommand(requete,connection); command.Parameters.Add("@NomClt", SqlDbType.Char, 20); command.Parameters["@NomClt"].Value = NomClient.Items.ToString(); SqlDataReader rader = command.ExecuteReader(); try { while (rader.Read()) { string value = null; // On part du principe que le champ à l'index 0 est de type char dans la base if (rader.IsDBNull(0) == false) { value = rader["C_STATUCLT"].ToString(); StatuClient.Items.ToString() = value; } } } catch(Exception ee) { MessageBox.Show(ee.Message); } finally { connection.Close(); }Il m'affiche l'erreur suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part StatuClient.Items.ToString() = value;merci d'avance!!C:\Documents and Settings\Propriétaire\Mes documents\Visual Studio Projects\SuiviClient_Distrib'Info\NouvelleIntervention.cs(486): La partie gauche d'une assignation doit être une variable, une propriété ou un indexeur
Tu ne voudrais pas réfléchir un peu avant de faire n'importe quoi ?
Ce qui t'intéresse, c'est l'élément sélectionné du combobox non ? Hé bien utilise la propriété SelectedValue plutot que de faire une bidouille de type .Items.ToString() qui ne renvoie rien d'utile.
Ensuite qu'est ce que tu espères faire en affectant une String à la représentation textuelle d'une collection d'éléments ?
Je parle de cette instruction-là :Quel est le type de StatuClient ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part StatuClient.Items.ToString() = value;
Troisième chose à quoi ça te sert d'utiliser une combobox pour le nom du client ?
Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.
Bonnes pratiques pour les accès aux données
Débogage efficace en .NET
LINQ to Objects : l'envers du décor
Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter
Ce qui m'interresse je l'ai dit mainte fois.
Je souhaite afficher le statut du client(choisi précédement dans ma combo client) dans ma Combo StatuClient.
Ensuite, je réfléchi et j'essaye de faire ce que je peux.
Par :je souhaite affecter le statut dans ma combo StatuClient.
Code : Sélectionner tout - Visualiser dans une fenêtre à part StatuClient.Items.ToString() = value;
Puis, StatuClient correspond au nom de ma combo correspondant au statut du client.
Pour finir, ma combo NomClient me permet de sélectionner le nom du client souhaité parmi les nomsclient existants dans la base.
merci d'avance en espèrant avoir répondu a toute tes questions!!
Suis vraiment désolé de vous déranger mais la je vois vraiment pas comment faire pour faire ce dont rad_hass a dit tout t'a l'heure :J'en peu plus de me prendre la tête la dessus.... en plu j'ai une grosse migraine donc si vous pouviez m'aider ce serais cool.Ben pour faire simple, tu veux afficher ton statut quelque part.
Eh ben tu prend ce quelque part et tu lui donne la valeur de ton statut ...
merci d'avance pour votre aide.
Non je le laisse en ComboBox car si le client existe pas, qu'on puisse choisir le statut du nouveau client.
voila je pense avoir répondu assez clairement a ta question.
P.S. : la question ici n'est pas : pourquoi une combo mais comment la remplir.
merci d'avance!!![]()
voila.
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
19
20
21
22
23
24
25
26
27
28
29
30
31 SqlConnection connection; SqlCommand command; connection = new SqlConnection("Data Source=DIST-5B8D87E3A9;Initial Catalog=DistribInfo;Integrated Security=SSPI"); connection.Open(); string requete = ("SELECT C_STATUCLT FROM CLIENT WHERE CLIENT.C_NOMCLT= @NomClt"); command = new SqlCommand(requete,connection); command.Parameters.Add("@NomClt", SqlDbType.Char, 20); command.Parameters["@NomClt"].Value = NomClient.Items.ToString(); SqlDataReader rader = command.ExecuteReader(); try { while (rader.Read()) { string value = null; // On part du principe que le champ à l'index 0 est de type char dans la base if (rader.IsDBNull(0) == false) { value = rader["C_STATUCLT"].ToString(); // StatuClient.Items.ToString() = value; } } } catch(Exception ee) { MessageBox.Show(ee.Message); } finally { connection.Close(); }
J'ai pas trop avancé car je vois pas trop comment faire ce que rad_hass a dit un peu plus bas :Puis je fais autre chose en même temp pour m'avancer.Ben pour faire simple, tu veux afficher ton statut quelque part.
Eh ben tu prend ce quelque part et tu lui donne la valeur de ton statut ...
merci d'avance!!
Je cite la MSDN :
http://msdn2.microsoft.com/fr-fr/lib...ox(VS.80).aspx
"Vous pouvez utiliser ces propriétés pour gérer l'élément actuellement sélectionné dans la liste, la propriété Text pour spécifier la chaîne affichée dans le champ d'édition, la propriété SelectedIndex pour obtenir ou définir l'élément en cours, et la propriété SelectedItem pour obtenir ou définir une référence à l'objet."
J'ai pas tout compris mais bon je vais y réfléchir et regarder ça calmement.
merci quand même!!
Cordialement.
Fais ceci :
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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 SqlConnection connection; SqlCommand command; connection = new SqlConnection("Data Source=DIST-5B8D87E3A9;Initial Catalog=DistribInfo;Integrated Security=SSPI"); connection.Open(); string requete = ("SELECT C_STATUCLT FROM CLIENT WHERE CLIENT.C_NOMCLT= @NomClt"); command = new SqlCommand(requete,connection); command.Parameters.Add("@NomClt", SqlDbType.Char, 20); command.Parameters["@NomClt"].Value = NomClient.Items.ToString(); SqlDataReader rader = command.ExecuteReader(); try { while (rader.Read()) { string value = null; // On part du principe que le champ à l'index 0 est de type char dans la base if (rader.IsDBNull(0) == false) { value = rader["C_STATUCLT"].ToString(); StatuClient.Items.Add(value); } } } catch(Exception ee) { MessageBox.Show(ee.Message); } finally { connection.Close(); }
Partager