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 :

affichage données d'une table dans une listbox dés l'ouverture de l'IHM


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Septembre 2011
    Messages : 19
    Par défaut affichage données d'une table dans une listbox dés l'ouverture de l'IHM
    bonjour à tous,

    voila j'ai créer une table de données que j'ai connecter a mon projet winform en c# et je voudrai afficher une colonne de cette table dans une listboxdés l'uoverture de la fenetre pendant l'exécution. J'ai écrit sa, ms sa ne m'affiche rien :

    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    namespace WindowsFormsApplication1
    {
        public partial class Form1 : Form
        {
            public string connStr = "DRIVER={MySQL ODBC 5.1 Driver};SERVER=DBA-SRV;UID=user;DATABASE=base-fp;Password=****";
            public OdbcConnection oConn;
     
            public Form1()
            {
                oConn = new OdbcConnection(connStr);
     
                InitializeComponent();
     
                try
                {
                    oConn.Open();
                    Console.WriteLine("Successfully connected to the data base");
     
                    OdbcCommand oComm = new OdbcCommand();
                    oComm.Connection = oConn;
                    oComm.CommandText = "Select * from Base-FP";
                    OdbcDataReader oReader = oComm.ExecuteReader(CommandBehavior.CloseConnection);
                    while (oReader.Read())
                    {
                        lbAffichage.Items.Add(oReader[1].ToString());
                    }
                    Console.Read();
                }
                catch (OdbcException caught)
                {
                    Console.WriteLine(caught.Message);
                    Console.Read();
                }
                finally
                {
                    oConn.Close();
                    oConn = null;
                }
     
     
            }
     
            private void lbAffichage_SelectedIndexChanged(object sender, EventArgs e)
            {
     
            }
     
     
        }
    }
    merci d'avance

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Février 2003
    Messages
    2 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 2 194
    Par défaut
    Ton reader renvois des records?
    Tu as testé la requete sur la Base de donnée?

  3. #3
    Membre averti
    Femme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Septembre 2011
    Messages : 19
    Par défaut
    bjr,

    dsl pour le retard et merci pr ta reponse! en fait au lieu de mettre le nom de ma table (postes) dans la commandeText j'avais mi le nom de ma bas ("base-fp").

    Mais maintenan me vola avce autre chose : j'ai crée une datagridview avec 5 colonnes mais g du mal a afficher les données de ma table dans la datagridview..
    voii mon 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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    public Form3()
            {
                oConn = new OdbcConnection(connStr);
                InitializeComponent();
     
                for (int j = 0; j < dataGridView1.Rows.Count; j++)
                {
                    if (j % 2 == 0)
                        dataGridView1.Rows[j].DefaultCellStyle.BackColor = Color.Gray;
                    else
                        dataGridView1.Rows[j].DefaultCellStyle.BackColor = Color.White;
                }
     
     
     
                try
                {
                    oConn.Open();
                    Console.WriteLine("Successfully connected to the data base");
     
                    OdbcCommand oComm = new OdbcCommand();
                    oComm.Connection = oConn;
                    oComm.CommandText = "Select NomPoste from postes";
                    OdbcDataReader oReader = oComm.ExecuteReader(CommandBehavior.CloseConnection);
                    while (oReader.Read())
                    {
                       //je ne sais pas quoi mettre ici 
                    }
                    Console.Read();
                }
                catch (OdbcException caught)
                {
                    Console.WriteLine(caught.Message);
                    Console.Read();
                }
                finally
                {
                    oConn.Close();
     
                }
            }
    mercii

  4. #4
    Membre émérite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2010
    Messages
    479
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2010
    Messages : 479
    Par défaut
    bonjour,
    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
    34
     
    try
                    {
                        oConn.Open();
                        Console.WriteLine("Successfully connected to the data base");
     
                        OdbcCommand oComm = new OdbcCommand();
                        oComm.Connection = oConn;
                        oComm.CommandText = "Select NomPoste from postes";
                        OdbcDataReader oReader = oComm.ExecuteReader(CommandBehavior.CloseConnection);
                        while (oReader.Read())
                        {
                            dataGridView1.Rows.Add(oReader[0], "colonne 2", "colonne 3", "colonne 4", "colonne 5");
                        }
                        //c'est mieux de placer le code de mise en couleur une fois qu'on a des lignes dans le datagridview :)
                        for (int j = 0; j < dataGridView1.Rows.Count; j++)
                        {
                            if (j % 2 == 0)
                                dataGridView1.Rows[j].DefaultCellStyle.BackColor = Color.Gray;
                            else
                                dataGridView1.Rows[j].DefaultCellStyle.BackColor = Color.White;
                        }
                        Console.Read();
                    }
                    catch (OdbcException caught)
                    {
                        Console.WriteLine(caught.Message);
                        Console.Read();
                    }
                    finally
                    {
                        oConn.Close();
     
                    }
    je pense que cela s'utilise comme ça.
    Toutefois j'ai une question : pourquoi 5 colonnes sur le datagridview alors que ta requete ne remonte qu'une colonne ?
    Ne sachant pas j'ai rempli les colonnes par "colonne 2" "colonne 3" pour te montrer la logique.

    Tu peux également remplir un datagridview comme cela :

    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
     
    while (oReader.Read())
                        {
                            DataGridViewRow row = new DataGridViewRow();
                            DataGridViewTextBoxCell tbc_1 = new DataGridViewTextBoxCell();
                            tbc_1.Value = oReader[0].ToString();
                            DataGridViewTextBoxCell tbc_2 = new DataGridViewTextBoxCell();
                            tbc_2.Value = "colonne 2";
                            DataGridViewTextBoxCell tbc_3 = new DataGridViewTextBoxCell();
                            tbc_3.Value = "colonne 3";
                            DataGridViewTextBoxCell tbc_4 = new DataGridViewTextBoxCell();
                            tbc_4.Value = "colonne 4";
                            DataGridViewTextBoxCell tbc_5 = new DataGridViewTextBoxCell();
                            tbc_5.Value = "colonne 5";
                            row.Cells.Add(tbc_1);
                            row.Cells.Add(tbc_2);
                            row.Cells.Add(tbc_3);
                            row.Cells.Add(tbc_4);
                            row.Cells.Add(tbc_5);
                            dataGridView1.Rows.Add(row);
                        }
    // a utiliser si les colonnes ne sont pas des dgvtextboxcell mais des dgvimagecell ou dgvcomboboxcell

  5. #5
    Membre averti
    Femme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Septembre 2011
    Messages : 19
    Par défaut
    Merci bcp je vais essayer sa !!

    en fait je suis debutante en c# et base de données dnc la ma table n'est pas complete du tout je fais juste des essais pour savoir manipuler, je n'ai pas encor la bdd finale

  6. #6
    Membre averti
    Femme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Septembre 2011
    Messages : 19
    Par défaut
    sa marche super bien la premiere methode merci bcp !!!!

    par contre j'aimerai que la colonne de latable (oReader[1])que j'affiche dans la datagrid s'affiche dans la 3eme colonne de la datagrid...

    que dois-je ajouter ?

    merci encore

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

Discussions similaires

  1. copier une table d'une BDD dans une table d'une autre BDD
    Par faniette dans le forum C++Builder
    Réponses: 2
    Dernier message: 15/05/2013, 10h17
  2. Comment placer une image dans une table de une base de données
    Par Arnold Falanga dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 22/07/2012, 09h29
  3. Exporter les données d'une table dans une table plus grande
    Par pierricktpt dans le forum Langage SQL
    Réponses: 7
    Dernier message: 10/04/2012, 15h20
  4. Réponses: 7
    Dernier message: 25/03/2011, 10h52
  5. [AC-2003] insert des données d'une table dans une table d'une base externe
    Par marieo dans le forum VBA Access
    Réponses: 1
    Dernier message: 30/11/2009, 14h29

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