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 :

afficher les données d'une requête dans une ListView


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    161
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 161
    Par défaut afficher les données d'une requête dans une ListView
    Bonjour à tous,

    mon problème c que j'ai une listView dans laquelle je veux afficher le resultat de ma requete. La requete va donner normalement comme resultat: Name, Age, Firstname et City. Ces données vont etre affichées sous forme de lignes dans la listview schématisée dans l'image si joint.

    Merci bcp
    Images attachées Images attachées  

  2. #2
    Expert confirmé

    Avatar de Philippe Vialatte
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juillet 2004
    Messages
    3 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 3 029

    Mon Blog

    The Cake is still a lie !!!



    Vous voulez contribuer à la rubrique .NET ? Contactez-moi par MP.
    Vous voulez rédiger des articles pour la rubrique .NET ? Voici la procédure à suivre.

  3. #3
    Membre éprouvé Avatar de bobmidou
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2008
    Messages : 121
    Par défaut
    Salut

    J'avais fait un exemple pareil avec une table différente que la tienne.
    lst = mon ListView

    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
     
    //string strSql = "Select * from ordinateurs  order by nom asc";
     
    try
    {
           ...
           rdr = cmd.ExecuteReader();
     
           while (rdr.Read())
           {
                 ListViewItem liste = new ListViewItem(new string[] {
                                                    rdr[0].ToString(), // nom 
                                                    rdr[1].ToString() + " $", // prix
                                                    rdr[2].ToString(), // Description
                                                    rdr[3].ToString()}, // Stock
                                                    -1);
                 this.lst.Items.AddRange(new System.Windows.Forms.ListViewItem[] { liste });
            }
             rdr.Close();
             ...
    Bonne chance

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    614
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 614
    Par défaut
    si tu veux un affichage en "tableau" utilise plutot un datagridview.
    c'est beaucoup plus confortable qu'un listview pour l'affichage des données venant d'une requete.
    Tu as pas mal d'option dans un dgv que tu n'as pas dans une listview
    Voici un exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    string connectionString = "provider=Microsoft.JET.OLEDB.4.0; " /* le string de connection a ta db ici c'est de l'access*/+ "data source =" "C:\\ADC.mdb;"; //l'endroit de ta db
                string commandString = "Select *  from tblARS"
                dataAdapter = new OleDbDataAdapter(commandString, connectionString);
     
                dataSet = new DataSet();
                dataAdapter.Fill(dataSet, "ARS");
                dataGridView1.DataSource = dataSet.Tables["Archis"].DefaultView;
    Et voila tu as le résultat de ta requete dans un dgv

  5. #5
    Invité de passage
    Homme Profil pro
    Inscrit en
    Avril 2008
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Maroc

    Informations forums :
    Inscription : Avril 2008
    Messages : 1
    Par défaut
    Si tu récupére les données sous format d'un tableau tu peux utilisé ce code compact qlq que soit le nombre de colonnes:
    colonnes={"col1","col2","col3",...,"col4"};

    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
    		public static void chargerListeView(ref ListView liste,DataTable table, string[] colonnes)
    		{
     
    				liste.Items.Clear();
    				int nbrRow = table.Rows.Count;
    				int nbrColumn = colonnes.Length;
    				for(int i=0;i<nbrRow;i++)
    				{
    					String[] st = new String[nbrColumn];
    					for(int j=0;j<nbrColumn;j++)
    					{
    						st.SetValue(table.Rows[i][colonnes[j]].ToString(),j);
    					}
    					ListViewItem lstItem = new ListViewItem(st);
    					liste.Items.AddRange(new ListViewItem[] {lstItem});
    									}
    		}

Discussions similaires

  1. [Toutes versions] coller les données d'une plage d'une cellule dans une cellule d'une autre feuille[VBA]
    Par arthson dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 24/01/2012, 17h37
  2. Afficher les données d'un Vector dans une JTable
    Par lamyy dans le forum Composants
    Réponses: 2
    Dernier message: 26/10/2011, 13h56
  3. Réutiliser des données d'une requête dans une requête
    Par mims1664 dans le forum Requêtes
    Réponses: 12
    Dernier message: 06/02/2009, 14h12
  4. Réponses: 4
    Dernier message: 01/12/2005, 14h36

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