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 :

[C#] Enregistrer une combobox


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de padodanle51
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2006
    Messages
    389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 389
    Par défaut [C#] Enregistrer une combobox
    bonjour voilà je souhaite sauvegarder à chaque fin d'application l'état de ma combobox, mais voilà il me semble qu'il y a un bug dans les settings de visual studio car mon code est bon et malgré tout à chage démarrage mon combobox des settings = null
    D'après vous le bug viens de moi ou de visual studio car voilà mon code au lancement:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     if (Properties.Settings.Default.Favorisliste != null)
                {
                    comboBox1 = Properties.Settings.Default.Favorisliste;
                }
    et kan j'ajoute un élément dans ma combo voilà ce que je met
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    comboBox1.Items.Add(textBox1.Text);
                    Properties.Settings.Default.Favorisliste = comboBox1;
                    Properties.Settings.Default.Save();
    Merci de m'aider

  2. #2
    Membre éclairé Avatar de padodanle51
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2006
    Messages
    389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 389
    Par défaut
    esque quelqu'un a déjà réussi à stocker les éléments de sa combobox dans les settings. Autrement si vous avez une autre solution pour moi je suis prenant
    Merci

  3. #3
    Membre éclairé Avatar de padodanle51
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2006
    Messages
    389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 389
    Par défaut
    Bon déjà je vois d'ou vien le soucis, c'est que au chargement
    Properties.Settings.Default.Favorisliste = null, pourquoi a votre avis? merci de m'aider c très important

  4. #4
    Membre éclairé Avatar de padodanle51
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2006
    Messages
    389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 389
    Par défaut Peut-etre que ça pourra vous aider
    j'ai ouvert le fichier xml où tout se sauvegarde et là stupeur! il y a bien favorislist mais il n'y a aucune value?!?!
    Moi je vois vraiment pas d'où ça peut venir

  5. #5
    Membre expérimenté Avatar de toniolol
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2005
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 281
    Par défaut
    Salut je ne peux pas tester mais ne peux-tu pas faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Properties.Settings.Default.Favorisliste = comboBox1.Items;

  6. #6
    Membre éclairé Avatar de padodanle51
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2006
    Messages
    389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 389
    Par défaut
    Non ça ne marche pas g l'erreur suivante:

    Impossible de convertir implicitement le type 'System.Windows.Forms.ComboBox.ObjectCollection' en 'System.Windows.Forms.ComboBox'

    et si je fais

    Properties.Settings.Default.Favorisliste.Items = comboBox1.Items;

    j'ai une erreur comme koi items est en lecture seul
    (Merci de m'aider tu es le seul)

  7. #7
    Membre éclairé Avatar de padodanle51
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2006
    Messages
    389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 389
    Par défaut
    Esque le problème peut venir que dans settings.settings quand j'ai enregistré favorislist je n'ai rien mis à value? si c'est le cas quesque je dois mettre svp?

  8. #8
    Membre expérimenté Avatar de toniolol
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2005
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 281
    Par défaut
    Le souci c'est que tu semble être sur du C# v2 et que je suis en VB 1.1 et occasionnelement (pas assez à mon gout) en v2 alors mon aide est plus que limitée.
    Une question quand même, en mode debug que dit un espion posé sur "Properties.Settings.Default.Favorisliste" au moment du chargement de ton appli ?

  9. #9
    Membre éclairé Avatar de padodanle51
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2006
    Messages
    389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 389
    Par défaut
    il me dit que ça vaut null

  10. #10
    Membre expérimenté
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Par défaut
    Je vais peut être dire une bêtise, car ce qui suit n'est que déduction, mais on ne sait jamais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Properties.Settings.Default.Favorisliste = comboBox1.Items;
    Impossible de convertir implicitement le type 'System.Windows.Forms.ComboBox.ObjectCollection' en 'System.Windows.Forms.ComboBox'
    A la vue de ce du bout de code et du message d'erreur, je dirais que ton problème vient du fait que tu cherches à stocker l'objet ComboBox directement (Favorisliste et de type ComboBox) alors que ce que tu devrais faire c'est enregistrer les différents items de ta ComboBox, pour pouvoir la réalimenter au prochain coup.

    Une manière de faire, mais je n'ai jamais eu à l'utiliser, est la sérialisation Xml. En sérialisant ta collection d'Items, tu pourrais réalimenter ta ComboBox avec cette collection par la suite.

    Prenons un exemple. Sur une fenêtre, j'ai une ComboBox et un bouton. Lorsque je clic sur ce bouton, je demande à sérialiser la collection d'Items de la ComboBox
    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
    private void button1_Click(object sender, EventArgs e)
    {
        this.Serialize(this.comboBox1.Items);
    }
     
    private void Serialize(object monObjet)
    {            
        try
        {
            using (StreamWriter stream = new StreamWriter("C:\\serialize.xml"))
            {
                XmlSerializer serializer = new XmlSerializer(monObjet.GetType());
                serializer.Serialize(stream, monObjet);
            }
        }
        catch (Exception ex)
        {
            string s = ex.Message;
        }
    }
    et le fichier généré au final ressemble à ceci
    <?xml version="1.0" encoding="utf-8"?>
    <ArrayOfAnyType xmlns...>
    <anyType xsi:type="xsd:string">Choix 1</anyType>
    <anyType xsi:type="xsd:string">Choix 2</anyType>
    <anyType xsi:type="xsd:string">Choix 3</anyType>
    <anyType xsi:type="xsd:string">Choix n</anyType>
    </ArrayOfAnyType>
    Je retrouve bien dans ce fichier les différents items de ma ComboBox. Après rien de plus simple que de parcourir ce fichier pour réalimenter une ComboBox. C'était assez trivial dans ce cas là, chaque item est un String, mais on peut facilement faire la même chose avec des item qui sont eux même des classes perso

    La sérialisation est peut être un peu lourde pour ce genre de chose, mais ce qu'il faut bien voir c'est que ce sont les items qu'il faut enregistrer et non la ComboBox

  11. #11
    Membre éclairé Avatar de padodanle51
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2006
    Messages
    389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 389
    Par défaut
    Ok merci je v essayer et je vous tiens au courant demain, en effet je stocker la combobox et pas les items et ça tombe bien mes items sont des strings. Merci beaucoup (par contre pour le load comment faire pour recharger la combobox?)
    Merci encore

  12. #12
    Membre expérimenté
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Par défaut
    Citation Envoyé par padodanle51
    par contre pour le load comment faire pour recharger la combobox?
    Tu fais juste un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    maComboBox.Items.Add(maString);
    En récupérant les différentes chaînes depuis leur conteneur (fichier Xml si sérialisation, ...).

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

Discussions similaires

  1. Multi-selection dans une ComboBox ?
    Par Moloko dans le forum MFC
    Réponses: 5
    Dernier message: 07/07/2021, 17h26
  2. Enregistrer les modifications du Textbox relié à une Combobox
    Par foular dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 31/03/2015, 12h38
  3. Enregistrer des options dans une ComboBox
    Par nadabb dans le forum C#
    Réponses: 11
    Dernier message: 26/07/2009, 18h31
  4. enregistrements d'une colonne de table vers une combobox ?
    Par gregcat dans le forum Bases de données
    Réponses: 4
    Dernier message: 30/01/2006, 09h57
  5. Pré-sélectionner un élément d'une combobox
    Par delphim dans le forum Composants VCL
    Réponses: 4
    Dernier message: 17/06/2003, 15h26

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