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

Windows Forms Discussion :

Ajout d'un combo sur un datagridview Bindé


Sujet :

Windows Forms

  1. #1
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut Ajout d'un combo sur un datagridview Bindé
    Decidément c'est ma semaine des Combo dans les Datagridview !!

    Voici le probleme

    1- Je binde un DGV sur une datatable
    2- Une colonne de cette datatable contient des valeurs Pomme, Poire, Prune
    3- J'ai une table de fruits !
    4- Je peux binder la Table de fruits a un Combo !
    5- En cliquant sur la colonne fruit de mon Dgv j'aimerais faire apparaitre dans le DGV le combo de selection d'un fruit

    Questions
    a) Est ce possible sachant que le DGV est Bindé sur une table qui contient deja le fruit initial ?

    b) Si oui quelle est la bonne methode ?

    N.B. J'ai deja essayé de declarer un DataGridViewCoboBoxCell, d'assigner le DataSource et le DisplayMember de ce combo et d'assigner le cell concerné de mon DGV au Combo mais ca claque une DataError

    Donc je cherche en espérant rencontrer une solution ?

    Merci de votre aide
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  2. #2
    Membre actif
    Inscrit en
    Avril 2006
    Messages
    346
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 346
    Points : 252
    Points
    252
    Par défaut
    Bonsoir,

    il faut effectivement que tu paramètres le datasource, le displaymember du combo mais aussi le valuemember et surtout le datapropertyname.
    Par exemple,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    tonComboDGV.DataSource = taDataTableDeFruit;
    tonComboDGV.DisplayMember = NomFruit;
    tonComboDGV.ValueMember = IdFruit; // Primary Key de table Fruit
    tonComboDGV.DataPropertyName = IdFruit; // Foreign Key de la table pincipale sur la table Fruit
    A+

  3. #3
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Meci de ta suggestion, mais je ne pense pas que la solution soit là !

    D'autant qu'un DataGridViewComboBoxCell n'as pas de propriété .DataPropertyName !!
    Pas plus qu'un ComBo d'ailleurs !

    DataPropertyName est une Propriété de Colonne de Dgv qui dans mon cas est assignée automatiquement lors du DataBinding
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  4. #4
    Membre actif
    Inscrit en
    Avril 2006
    Messages
    346
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 346
    Points : 252
    Points
    252
    Par défaut
    DataGridViewComboBoxCell n'as pas de propriété .DataPropertyName
    Tout à fait d'accord mais je parlais du DataGridViewComboBoxColumn puisque c'est lui que tu dois configurer pour la liaison de données.

    Pourrais-tu indiquer les valeurs attribuées aux propriétés DataSource, DisplayMember, ValueMember et DataPropertyName ?

    Si tu ne penses pas pas que ça vienne de là, d'après toi ça vient d'où ?
    Quelle est le message retourné par le DataError ?

    ++

  5. #5
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    La base du probleme vient certainement du fait que je n'ai pas trouvé la maniere de convertir une colonne bindée dans un autre type et je vais finir par croire que ce n'est pas possible

    L'autre solution serait d'ajouter une colonne non bindée supplémentaire, de cacher la colonne bindée et de faire le databinding entre les deux !
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  6. #6
    Membre actif
    Inscrit en
    Avril 2006
    Messages
    346
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 346
    Points : 252
    Points
    252
    Par défaut
    Désolé mais je manque d'information pour t'aider plus.
    Tout ce que je sais est que pour un problème similaire au tien, je fais comme expliqué dans le message précédent et ça fonctionne parfaitement pour moi.

    ++

  7. #7
    Membre éprouvé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2007
    Messages
    693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 693
    Points : 1 187
    Points
    1 187
    Par défaut
    Bonjour,

    As-tu essayé de ne pas utiliser une datatable en tant que datasource de ta comboboxcolumn par exemple en utilisant une list<T> !

    De mon coté j'ai déjà fait ce que tu souhaites réaliser mais en utilisant des list<T>.

    Bon courage.

Discussions similaires

  1. [WD14] Ajout d'une option dans combo sur requête
    Par no_me_entero dans le forum WinDev
    Réponses: 3
    Dernier message: 05/08/2009, 21h17
  2. nhnibernate et datagridview bindé sur datatable
    Par alacaraibe dans le forum C#
    Réponses: 2
    Dernier message: 23/06/2009, 17h31
  3. Réponses: 4
    Dernier message: 14/08/2008, 16h34
  4. Réponses: 4
    Dernier message: 27/05/2008, 23h43
  5. Réponses: 1
    Dernier message: 24/07/2006, 11h51

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