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 :

[VB.NET 2003] DataBindings


Sujet :

Windows Forms

  1. #1
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut [VB.NET 2003] DataBindings
    Salut à tous !

    Un p'tit truc que je pense être simple mais que je ne comprends pas ^^.

    Voici deux petites lignes de code que vous comprendrez sans trop de problème je pense.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    cbIdClient.DataSource = dsClientId.Tables(0)
    cbIdClient.DisplayMember = "nidclient"
    cbIdClient étant une combobox qui affiche les id clients (si si j'vous jure ^^)

    Je fais cela pour plusieurs combobox me servant à afficher des listes de plusieurs champs pour lesquelles j'ai besoin que des valeurs soient sélectionnées.

    Mon problème est que pour certaines combobox, ça fonctionne nickel et pour d'autres (celle de cet exemple entre autre), à la place d'y avoir les valeurs il y a "System.Data.DataRowView" comme vous pouvez le voir dans le screenshot.

    Ma question est simple... Pourquoi ?

    Merci d'avance.

    Griftou.
    Kropernic

  2. #2
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Je viens de faire un debug en ajoutant un watch sur cette combobox et il apparait que la valeur de la propriété displaymember n'est pas modifiée et reste donc à "". Le programme passe bien sur l'instruction mais la valeur n'est pas modifiée...

    J'ai regardé ensuite sur une autre combobox où je n'ai pas ce problème est là, la valeur de displaymember est bien mise à jour.

    Le problème se situe donc là mais je n'ai aucune du pourquoi.

    Quelqu'un dans l'assistance ?

    Griftou.
    Kropernic

  3. #3
    Expert éminent
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Points : 7 962
    Points
    7 962
    Par défaut
    essayes avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    cbIdClient.DataSource = dsClientId.Tables(0).DefaultView
    cbIdClient.DisplayMember = "nidclient"

  4. #4
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Bin j'viens de tester et ça ne change rien.

    Merci quand même.

    Griftou.
    Kropernic

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2007
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    J'utilise le meme code que toi. Mais dans le seul cas ou j'ai eut system....
    C'est qu'il y avait rien dans mon dataset. Je ne l'avais pas remplit.

  6. #6
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Bin non j'ai vérifié en ajoutant un watch sur la combobox et il y a bien 12105 items. Et c'est tip top le nombre de client qu'il y a dans ma table, ce serait une énormale coïncidence quand même ^^

    Griftou.
    Kropernic

  7. #7
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Quelques détails en plus...

    Après avoir été reconsulter le cours de Philippe Lasserre, j'ai mis l'affectation de displaymember avant celle de datasource mais cela ne change rien au fait que, à l'affichage, j'ai le type de donnée au lieu de la valeur dans ma combobox.

    J'ai pu cependant remarquer qu'il s'agit "juste" d'un problème d'affichage. Quand je change d'élément dans ma combo, le traitement derrière s'effectue correctement alors qu'il prend pourtant en compte la valeur contenue dans macombo.Text. Cette propriété devrait normalement contenir "System.Data.DataRowView" si j'en crois ce que mes yeux voient mais lors du traitement, elle contient bien la valeur du record choisi.

    Je suis donc totalement perdu !

    Help please !

    Griftou.
    Kropernic

  8. #8
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Voilà la réponse pour ceux qui rencontreraient le même problème.

    En fait, la propriété "DisplayMember" est case-sensitive !! Faites donc attention à la façon dont vous sélectionnez vos champs dans vos requêtes.

    Il en va de même pour la propriété "ValueMember".

    Voilà, c'était un truc très con mais qu'il fallait savoir...

    Griftou.
    Kropernic

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

Discussions similaires

  1. [VB.NET] Le DataBinding en vb.net, c'est comment?
    Par Pleymo dans le forum ASP.NET
    Réponses: 11
    Dernier message: 04/02/2005, 14h14
  2. [C#] Probleme de visual studio.net 2003
    Par gandalfar dans le forum Windows Forms
    Réponses: 6
    Dernier message: 07/01/2005, 14h53
  3. [ide .net 2003] Fichiers d'extension cc
    Par delta_ dans le forum MFC
    Réponses: 8
    Dernier message: 19/09/2004, 20h55
  4. [IDE][VS.NET 2003] Y a-t-il une liste des racourcis ?
    Par 404Found dans le forum Contribuez
    Réponses: 2
    Dernier message: 22/06/2004, 20h20
  5. VS .NET 2003 et DirectX 9
    Par GreenPhoenix dans le forum DirectX
    Réponses: 5
    Dernier message: 04/02/2004, 10h52

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