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 :

Problème Base de données => Listbox


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2009
    Messages : 7
    Par défaut Problème Base de données => Listbox
    Bonjour, je suis en train de programmer un programme utilisant une base de données access, j'aimerais mettre dans une listbox les objets que je lis dans une table de ma base.
    donc voici le code:


    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
    Users user = new Users(); //Objet correspondant a ma table
                Bd Bd = new Bd(); // Classe s'occupant des connexions
                Bd.Open(@"C:\Documents and Settings\Ardel\Bureau\C# - Application juin\Applic\bin\Debug\C#.mdb");
                Requete = "SELECT * FROM COMPTE";
                OleDbCommand Cmde = new OleDbCommand(Requete, Bd.Connection);
                OleDbDataReader dr;
                dr = Cmde.ExecuteReader();
                while (dr.Read())
                {
                    user.Name = dr[0].ToString();
                    user.Password = dr[1].ToString();
                    user.Right = dr[2].ToString();
                    MessageBox.Show(" Username: " + user.Name + "  Password: " + user.Password + "  Status: " + user.Right);
                    listBoxUsers.Items.Add(user);
                }
    Le problème est qu'au moment de l'ajout mon messageBox.show me montre bien les différents objets de ma table. Mais après dans ma liste j'ai mes différents nom d'objet (j'ai surchargé la méthode ToString pour qu'il n'affiche que leurs noms), mais lorsque je fais ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    private void listBoxUsers_SelectedIndexChanged(object sender, EventArgs e)
            {
                Users user = new Users();
                user = (Users)listBoxUsers.SelectedItem;
                labelInformation.Text = listBoxUsers.SelectedIndex.ToString();
                if (user != null)
                {
                    labelDetail.Text = " Username: " + user.Name + "  Password: " + user.Password + "  Status: " + user.Right;
                }
            }
    Il m'affiche tous le temps le même objet, mais pourtant l'index change en fonctions de celui sur lequel je clique... ?

    Je ne sais pas si la description du problème est suffisamment clair.
    Merci à ceux qui liront

  2. #2
    Membre expérimenté
    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
    Par défaut
    Salut

    Généralement pour faire ce que tu essaye de faire je trouve beaucoup plus simple de passer par une datatable et un DataGridView

    Et sincérement je n'ai jamais essayé d'afficher une listbox multicolonne
    Si c'est possible ce qui est certain c'est que ta classe User doit avoir un accesseur pour chacun des éléments que tu veux afficher

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2009
    Messages : 7
    Par défaut
    Mais ce n'est pas une listbox multicolonne, elle contient juste un objet qui contient les informations que je désire... (un peu a la Cpp: j'encapsule^^)

    Ah oui elle en a en plus des get/set (première fois que j'entends le terme accesseur lol) Je vais essayer avec ça.

    Edit: Mais il les utilise par défaut non, ceux créer par le refactor? Fin mon problème ne vient pas de là de toute façon je pense, mais merci pour ta réponse.

  4. #4
    Membre expérimenté
    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
    Par défaut
    Tu passe des objets Users a ton Listbox, comment veux tu qu'il sache ce qu'il doit afficher et comment ?

    C'est Pacques !
    Pas le pere Noel !

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2009
    Messages : 7
    Par défaut
    Ben je remets l'objet sélectionner dans un objet :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    private void listBoxUsers_SelectedIndexChanged(object sender, EventArgs e)
    {
    Users user = new Users();
    user = (Users)listBoxUsers.SelectedItem;
    Donc après je peux afficher l'objet. J'affiche l'objet dans un label pas dans mon listbox

  6. #6
    Membre expérimenté
    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
    Par défaut
    Et que veux tu afficher dans ton listbox alors ?

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

Discussions similaires

  1. problème base de donnée access
    Par Phiss dans le forum ASP
    Réponses: 6
    Dernier message: 21/11/2007, 21h15
  2. Problème base de données Microsoft Jet
    Par lilo415 dans le forum Access
    Réponses: 2
    Dernier message: 10/10/2007, 23h23
  3. Problème Base de donnée
    Par quedudev dans le forum C++Builder
    Réponses: 3
    Dernier message: 27/09/2007, 12h44
  4. Base de données et ListBox
    Par scorpion37 dans le forum C++Builder
    Réponses: 17
    Dernier message: 21/06/2006, 10h23
  5. Problème Base de données et CRecordSet
    Par LE CHAKAL dans le forum MFC
    Réponses: 3
    Dernier message: 20/08/2002, 11h59

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