IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

c# combo box reliée visual studio


Sujet :

C#

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 8
    Points : 3
    Points
    3
    Par défaut c# combo box reliée visual studio
    Bonjour, je suis actuellement en train de réaliser une application de recherche de client mais je voudrais avoir le choix de sélectionner sois par nom sois par ville sois pas numéro de téléphone grâce aux combo box proposée par visual studio MAIS dès que je change le nom, la ville, ou le numéro de téléphone toutes les autres combo box s'actualise par rapport à ce que j'ai selectionné pour ensuite n'afficher qu'un seul client dans le datagridview alors que si je recherche uniquement par le nom de la ville j'aimerai qu'il affiche tous les clients de la ville sans pour autant selectionner automatiquement le nom et le numéro de téléphone

    Merci par avance de vos réponse

  2. #2
    Membre expert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2013
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 563
    Points : 3 404
    Points
    3 404
    Par défaut
    C'est ce que tu souhaites faire ou ce que ça fait mais que tu ne souhaites pas?

    Dans tous les cas il va en falloir dire plus sur les points de bloquage.

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Merci de votre réponse.
    Je souhaite actuellement faire en sorte de pouvoir choisir de trier les données soit par nom de ville sois par nom du client soir par numéro de téléphone et ce qu'il ce passe c'est que des que je choisis une un nom de client cela m'affiche toute la liste des clients par ville car les combobox se charge automatiquement dès la sélection du nom du client.

  4. #4
    Membre expert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2013
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 563
    Points : 3 404
    Points
    3 404
    Par défaut
    Donc, si je comprend bien, tu as une grille affichant les client ainsi que leur ville et numéro de téléphone. Pour faciliter la lecture, tu as mis des ComboBox permettant de trier (d'ailleurs, il s'agit bien de trier, ou filtrer?) tes données. Hors, tu n'as pas les bons résultats lorsque tu appliques le filtre. Il semblerait donc que ce soit le binding qui soit en cause. Comment fais-tu pour le chargement automatique des combos?

  5. #5
    Membre chevronné
    Homme Profil pro
    edi
    Inscrit en
    Juin 2007
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : edi

    Informations forums :
    Inscription : Juin 2007
    Messages : 897
    Points : 1 913
    Points
    1 913
    Par défaut
    Aurais-tu un visuel de ton interface ? Parce-que là j'ai du mal à saisir si les ComboBox contiennent des critères de filtre, des clients, autre chose, s'il y a une grille, si ce sont les données de la grille qui ne sont pas correctes, s'il y a un TextBox qui change le contenu des ComboBox en fonction de la saisie... Bref... Aide-nous à t'aider

  6. #6
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Nom : capture_interface_2.PNG
Affichages : 267
Taille : 9,5 KoNom : catpure_interface_1.PNG
Affichages : 236
Taille : 12,0 Ko

    Je vous est joint des image des mes binding et de mon affichage en lui même, donc c'est bien un moyen de lister les différents clients lors de la recherche. Le binding est le même pour les trois combo différentes c'est à dire que je le lie a la BDD (sous access) et qu'ensuite ma requête est sensée filtrer mais cela ne se produit pas.

    Les données demandées sont introduites dans un datagridview grâce au code de mon bouton rechercher et tout cela à partir des données demandées dans les textbox qui au final de mettent à jour l'une en fonction de l'autre ce qui m'empêche d'arriver à choisir uniquement par ville ou uniquement par nom ou uniquement par les deux.

    Désolé pour le temps de réponse
    Cordialment

  7. #7
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2005
    Messages
    562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2005
    Messages : 562
    Points : 1 511
    Points
    1 511
    Par défaut
    Bonjour,
    Citation Envoyé par Zyron Voir le message
    qu'ensuite ma requête est sensée filtrer mais cela ne se produit pas.
    Donne nous ta requête.

    Citation Envoyé par Zyron Voir le message
    des données demandées dans les textbox qui au final de mettent à jour l'une en fonction de l'autre ce qui m'empêche d'arriver à choisir uniquement par ville ou uniquement par nom ou uniquement par les deux.
    Cordialment
    Oui mais c'est toi qui les gère ces combo donc elles ne font que ce tu leurs dit de faire....

    Voila comment je verrais le truc :
    1 . tu peuples tes combos avec toutes les villes, tous les noms (bon pour les téléphones je vois pas vraiment l'utilité), plus une valeur en tête de liste qui correspond à <<Tout>>... ainsi au lancement de ton interface tes combos sont remplies de toutes les valeurs possibles, et elles ont toutes la valeur <<Tout>> de sélectionnée.

    2. tu sélectionnes une valeur dans une combo, se qui déclenche la (bonne) requête. tu mets le résultat dans ta datagridView.

    De plus si tu fais bien de la poo et que ta datagridview prend une liste d'object, alors tu pourrais utiliser le BindingListView pour ensuite simplement pouvoir trier ta datagridview par des click sur les entêtes de colonne.

    J@ck.
    Pas de réponse par MP, merci.

    Penser au ça fait plaisir

  8. #8
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Pour ma requête j'ai actuellement celle-ci : myAdapter.SelectCommand.CommandText = "SELECT tx_2, tx_1, ad_1_num, ad_1_voie, ad_1_NomVoie, ad_1_bureau_dist, tel_1, tel_2, mail FROM prospect WHERE tx_1 = '" + this.cbx_rechercheNom.Text + "'UNION SELECT tx_2, tx_1, ad_1_num, ad_1_voie, ad_1_NomVoie, ad_1_bureau_dist, tel_1, tel_2, mail FROM prospect WHERE tel_2 = '" + this.cbx_rechercheTel.Text + "'UNION SELECT tx_2, tx_1, ad_1_num, ad_1_voie, ad_1_NomVoie, ad_1_bureau_dist, tel_1, tel_2, mail FROM prospect WHERE ad_1_bureau_dist = '" + this.cbx_rechercheVille.Text + "'; ";
    qui au final me tri les clients uniquement par ville.

    Au niveau des combo elles sont toutes reliées a la même table mais sur des colonnes différentes donc elles sont rempli grâce à ça.

    Et pour ma datagridview j'utilise le dataset pour importer les données avec ce code la :
    DataSet GescoDataSet = new DataSet();

    dgv_listeClient.DataSource = GescoDataSet; <--apprès le connection.close ()
    dgv_listeClient.DataMember = "prospect";

  9. #9
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2005
    Messages
    562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2005
    Messages : 562
    Points : 1 511
    Points
    1 511
    Par défaut
    Waï Waï Waï y a du boulot !

    Bon je sais que les débutants trouvent cela totalement null, mais les requêtes paramétrées concaténées sont à proscrire ... Surtout que ca ne coute rien de passer par des requêtes paramétrées, c'est aussi simple, sa bouffe pas plus de ligne, c'est plus lisible et surtout, c'est la bonne pratique qui te retirera tout un tas de problème de conversion et de sécurité (injection SQL)
    De plus, mais là ça change pas mal de chose, les dataset et autres dinosaures sont à proscrire aussi de par leur lourdeur, et les retirer d'aidera à faire vraiment de la poo, C# est un langage POO donc il est plus évident/simple/pratique de faire de la poo. le Framework te fournira tout pour remplacer tes dataset, par notamment des List<T>/IEnumerable<T>/Dictionnary<K,T> ... Bref si tu veux continuer dans cette direction on peut t'aider, de tout façon si tu comptes faire du développement ton métier alors tu devras y passer... pourquoi attendre et t'entrainer à faire du code spaghetti alors que tu pourrais commencer à jouer dans la cour des grands
    Voila pour le traditionnel laïus...

    Autre chose, pourquoi tu fais des UNION dans ta requête et pas toutes les conditions dans le where ? En tout cas vue la requête je comprends mieux maintenant le fonctionnement de ton interface.
    Donc maintenant que veux tu ? Car la requête n'a pas problème, et réalise le comportement que tu décris...

    Si tu veux par exemple que lorsque tu sélectionnes une ville n'avoir que les prospects de cette ville, alors retire les Union et filtre sur le champs de la ville dans la clause Where...

    J@ck.
    Pas de réponse par MP, merci.

    Penser au ça fait plaisir

  10. #10
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    C'est vrai que je n'y avais pas pensé mais je voyais pas du tout comment faire et je trouvais rien sur internet
    Pour la requête j'ai essayer de mettre tous mes paramètre dans le WHERE avec des AND mais le resultat revenais au même et ne prenais en compte qu'une condition sur les 3 :/
    Apres oui j'ai essayer des requête paramétrées mais j'ai rien compris et j'utilise le dataset parce que je connais pas non plus l'utilisation des framework ect .. alors oui un peu d'aide ne serai pas de refus ^^
    Merci à toi !

  11. #11
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2005
    Messages
    562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2005
    Messages : 562
    Points : 1 511
    Points
    1 511
    Par défaut
    Ok donc on va repartir du début ! Tu veux faire quoi ?
    Je vois 2 scénarios habituels possibles :
    1. Tu Sélectionne une ville, et dans la combo des noms il ne reste plus que les noms des prospects de la ville, tu sélectionnes alors, un de ces noms et la datagridview affiche tous les prospects de cette ville avec ce nom...
    2. Tu as tous les noms et toutes les villes dans tes combos box avec <<Tous>> au début, si tu sélectionnes une ville tu as tous les prospects de cette ville, si tu sélectionne un nom tu as tous les prospects avec ce nom, si tu sélectionne un nom et une ville tu as tous les prospects de cette ville avec ce nom.


    Tu as sans doute des autres scénarios mais je dirais que ceux-ci sont très courant.
    Maintenant il faut que tu exprime ton besoin très précisément... et ça tu es le seul à le connaitre... de là on en déduira ta requête, et une fois la requête ok, on la paramètrera facilement.

    J@ck.
    Pas de réponse par MP, merci.

    Penser au ça fait plaisir

  12. #12
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Dans le mille ^^ la proposition 2 est exactement ce que je recheerche sois l'un soiss l'autre sois les deux mais je savais pas comment l'expliquer

  13. #13
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2005
    Messages
    562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2005
    Messages : 562
    Points : 1 511
    Points
    1 511
    Par défaut
    Ok donc on part sur le plus simple, la première solution.
    Ta requête finale sera de la forme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT tx_2, tx_1, ad_1_num, ad_1_voie, ad_1_NomVoie, ad_1_bureau_dist, tel_1, tel_2, mail 
    FROM prospect 
    WHERE ad_1_bureau_dist = @nomVille AND tx_1 = @nomProspect
    Maintenant tu auras compris qu'il te faut aussi d'autres requêtes, une qui te fournit les noms de ville, une pour les noms des prospects... pour peupler tes combos, tu doit déjà avoir ce mécanisme puisque tes combo sont remplies, comment fais tu d'ailleurs pour peupler tes combos ?

    Donc les étapes dans l'ordre que tu devras réaliser :

    1. peupler ta combo des villes avec les nom de toutes les villes des prospects, et rajouter au début un éléments Tous (la vue que tu fais pas de poo ca va être un peu plus compliqué...)
    2. peupler ta combo des noms avec tous les noms de tes propects, et rajouter au début un éléments Tous
    3. sur le selectedIndexChanged de la combo des villes, si la combo des nom est sur Tous, tu vas rechercher la liste des noms de prospect correspondant à la ville, tu peuple ta combo des noms avec et tu peuple ta dgv avec tous les prospects de cette ville.
    4. sur le selectedIndexChanged de la combo des noms si la combo des villes est sur Tous, tu vas rechercher la liste des villes des prospects correspondant à ce nom, tu peuple ta combo des villes avec et tu peuple ta dgv avec tous les prospects de ce nom.

    Quand tu auras ça ce sera pas fini, mais tu pourras déjà utiliser chaque combo indépendamment...

    Bon code,
    J@ck.

    [EDIT] Oupss j'ai pas fait gaffe que c'est la 2 que tu voulais ... m*rd* alors !!! je refais tout
    Pas de réponse par MP, merci.

    Penser au ça fait plaisir

  14. #14
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Pour peupler mes combo je les ai relier chacune via le mode de liaison de données et j'ai pointé vers la colonne ou sont les noms des prospect ou les villes.
    Mais du coup je vois pas comment je peux bloquer la combo des noms lorsque je sélectionne uniquement le ville dans mes options de recherches

    [EDIT] Pas de probleme merci beaucoup (je fais de la poo mais je suis pas très très bon on va dire)

  15. #15
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2005
    Messages
    562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2005
    Messages : 562
    Points : 1 511
    Points
    1 511
    Par défaut
    Citation Envoyé par Zyron Voir le message
    Pour peupler mes combo je les ai relier chacune via le mode de liaison de données et j'ai pointé vers la colonne ou sont les noms des prospect ou les villes.
    Mais du coup je vois pas comment je peux bloquer la combo des noms lorsque je sélectionne uniquement le ville dans mes options de recherches
    J'ai éditer le précedent.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    this.cbx_rechercheNom.Enable = false;
    
    à mettre de le selectedIndexChanged des la combo des villes.

    J@ck.
    Pas de réponse par MP, merci.

    Penser au ça fait plaisir

  16. #16
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Merci beaucoup à je vais faire ça

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Association d'une dialog box a une classe avec visual studio 2012
    Par tonycalv dans le forum Développement Windows
    Réponses: 0
    Dernier message: 26/12/2014, 01h53
  2. [problème] picture box sous visual studio 2012
    Par invoceusse dans le forum C++/CLI
    Réponses: 7
    Dernier message: 06/02/2014, 14h45
  3. News Visual Studio
    Par farscape dans le forum Visual C++
    Réponses: 34
    Dernier message: 27/04/2010, 10h21
  4. Combo box et liste de valeurs contenues dans ma table
    Par TieumB dans le forum C++Builder
    Réponses: 14
    Dernier message: 05/04/2004, 18h47
  5. Version de Windows dans Visual Studio !!!
    Par Jasmine dans le forum MFC
    Réponses: 3
    Dernier message: 18/03/2004, 17h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo