Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : remplir plusieurs combobox [ Base de données / SQL Server ] (nehla)

vendredi 15 août 2008 à 11:32:00 | remplir plusieurs combobox

nehla

salut
j'ai crée plusieurs combobox et je veux remplir par les memes informations.
comment je peux le faire en c#.
merci d'avance pour votre aide.
voici le code de creation de plusieurs combobox
int x=24;
            for(int i=0; i<3; i++)
            {  
                ComboBox c= new ComboBox();
                c.Location=new System.Drawing.Point(8,x);
                c.Name="combo("+i+")";
                x+=32;
                groupBox3.Controls.Add(c);
            }

nehloucha

vendredi 15 août 2008 à 12:02:25 | Re : remplir plusieurs combobox

ikaer

Ajoutes les lors de leur création à une List<ComboBox>, aprés lorsque tu voudras changer une information, tu pourras faire un foreach sur cette liste

vendredi 15 août 2008 à 12:22:38 | Re : remplir plusieurs combobox

WishhhMaster

Salut,

SI tu veux les remplir au moment où tu les crée, tu peux faire comme ça

string[] items = new string[]{"element1","element2","element"}; //ce que tu veux mettre das tes combobox

int x=24;
            for(int i=0; i<3; i++)
            {  
                ComboBox c= new ComboBox();
                c.Location=new System.Drawing.Point(8,x);
                c.Name="combo("+i+")";
                x+=32;
                groupBox3.Controls.Add(c);

       foreach(string item in items)
            c.Items.Add(item);//ajoute les éléments au combobox
            }

vendredi 15 août 2008 à 12:51:14 | Re : remplir plusieurs combobox

lemmingperceval

ikaer, a propos de cette List, si tu fais un foreach (ComboBox c in this.Controls) ca marche pas?

vendredi 15 août 2008 à 12:54:02 | Re : remplir plusieurs combobox

ikaer

je sais pas, je n'ai pas testé, mais j'avais souvenir que non.


vendredi 15 août 2008 à 13:01:17 | Re : remplir plusieurs combobox

lemmingperceval

J'ai testé. C'est bizard, en faite ca marche si tu as que des ComboBox dans ton control container. Dans mon test, j'ai mis 3 comboBox, j'ai pu effectuer le foreach. Ensuite j'ai rajouter un label, et là, le foreach est passé sur le label et m'a fait sauter une exception de type InvalidCastException. Normalement, foreach(ComboBox c in...) n'est pas censé bouclé uniquement sur les ComboBoxs? Là il le fait sur tous les Controls contenu dans le parent.

vendredi 15 août 2008 à 13:19:42 | Re : remplir plusieurs combobox

WishhhMaster


foreach(ComboBox c in this.Controls) te jettera une exception si un des controls n'est pas une combobox, parce que c'est impossible de faire un cast d'un control quelquonque en combobox.

Ceci doit marcher:

Combobox cbb;
foreach(Control c in this.Controls)
{
    cbb = c as Combobox;
    if(cbb!=null)
    {
       //ici on est sur que le control est un combobox
    }
    else
    {
    //control autre que combobox
    }

}


vendredi 15 août 2008 à 13:21:18 | Re : remplir plusieurs combobox

ikaer

oki merci de l'info WishMaster :)

vendredi 15 août 2008 à 13:23:11 | Re : remplir plusieurs combobox
mardi 19 août 2008 à 12:48:58 | Re : remplir plusieurs combobox

TeBeCo

Membre Club
y a une maniere assez simple de faire ca
c'est presque ce que te proposait ikaer
ce n'est pas une List<ComboBox> que j'utiliserais
mais plutot un :
Dictonnary<String, ComboBox> mesCombos;
ce qui te permet dans ta boucle :

mesCombos = new Dictonnary<String, ComboBox> ();
for(int i = 0; i < n; i++)
{
   ComboBox c = new ComboBox();
   ...
   c.Name = "combo" + i.ToString();
   ...
   mesCombo.Add(c.Name, c);

   InitCombo(c);
}

et par la suite si tu pourrais faire :
mesCombo["combo3"].Items.Add("...");
par exemple qui correspondrais a un  :
combo3.Items.Add("...");
sauf que tu peux le rendre dynamique avec :
mescombo["combo"+i.ToString()].....


void InitCombo(ComboBox c)
{
   c.Items.Add(....);
....
}

Les type generique offre enormement de possibilité
pour la création de controle dynamique il vaux mieux s'en tenir a un dictionary qui t'empechera la création de 2 control ayant le meme nom (chose en tte logique impossible)
et qui te permettra un acces direct a ton controle depuis son nom sous forme de String

TeBeCo


1 2

Cette discussion est classé dans : combobox, remplir


Répondre à ce message

Sujets en rapport avec ce message

[C#] Remplir des comboBox avec une boucle [ par Phenomenium ] salut je voudrais remplir toutes les comboBox de mon groupBox avec le resultat d'une requete sql. Le probleme c'est que comme le nombre de comboBox pe Comment remplir une ComboBox avec plusieurs String ? [ par Johnfoo ] Comment remplir une ComboBox avec plusieurs texte ?Merci ComboBox dans un DataGridView [ par pkmnlio ] Bonjour,J'utilise une procedure stockee pour remplir mon datagridview.Je le rempli donc directement par le code avec la propriete datasource, et en de remplir un combobox avec les nom de fichier d'un repertoire [ par Gargantuass ] Bonjour,    Voila je voudrais remplir mon combobox avec les noms de fichiers d'un repertoire;    Jusqu'à l'heure j'arrive a remplir mon combobox avec replissage de combobox [ par nehla ] salutj'ai créer plusieurs combobox en c# et je veux les remplir par la meme information.voici le code de creation de ces comboboxint x=24;            Remplir un comboBox avec un ArrayList [ par francesdereve ] mais avec la methode qui contient le combobox en parametre cela a marcheCela correspond à ma demarche,mon probleme c'etait le OdbcDataReader car quand comboBox ne voulant pas se remplir à partir d'un IDataReader [ par systemic_anomaly ] Bonjour à tous, J'ai un problème surement simple à résoudre mais qui me prend la tête. J'aimerais remplir une comboBox avec les valeurs récupérées da remplir une combobox à partir d'une méthode de classe en C# [ par cherubin0807 ] j'ai écris une méthode de classe basée sur une procédure stockée qui retourne une liste de voitures (id et libellé).je veux ensuite ensuite utiliser c remplir combobox [ par teksakina ] salut tout le mondeje voudrais remplir un combobox à partir d'une base de donnée sqlveuillez me donner un exemple de codemerci Remplir un combo avec un ArrayList [ par francesdereve ] J'ai une forme qui contienty un combobox,j'ai une classe ou j'ai une methode qui selectionne tous les noms de personne dans une base.La methode retour


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,390 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.