Listbox settings saven

Status
Niet open voor verdere reacties.

Jan123451

Gebruiker
Lid geworden
21 apr 2012
Berichten
21
Hey,

Ik wil iets gaan maken waarbij je iets kunt opslaan in een listbox. Ik heb de volgende code:

Code:
        public Form1()
        {
            InitializeComponent();
            listBox1.Text = Properties.Settings.Default.List;
            foreach (string item in listBox1.Items)
            {
                Properties.Settings.Default.List.Add(item);
            }
        }

        private void Form1_FormClosed(object sender, FormClosedEventArgs e)
        {
            Properties.Settings.Default.List = listBox1.Text;
            Properties.Settings.Default.Save();
        }
Zo heb ik de settings staan:
capture2lg.png


Maar ik krijg deze errors en ik weet niet hoe ik die moet oplossen:

Code:
Cannot implicitly convert type 'System.Collections.Specialized.StringCollection' to 'string'
Cannot implicitly convert type 'string' to 'System.Collections.Specialized.StringCollection'
 
[cpp]public Form1()
{
InitializeComponent();
listBox1.Items.AddRange(Properties.Settings.Default.List);

//Waar slaat de volgende code op?
//foreach (string item in listBox1.Items)
//{
// Properties.Settings.Default.List.Add(item);
//}
// ?

}

private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
Properties.Settings.Default.List = listBox1.Items;
Properties.Settings.Default.Save();
}[/cpp]

Niet getest, maar zou moeten werken.

[edit] werkt niet, zie post #4[/edit]
 
Laatst bewerkt:
Een vriend van mij zei dat ik dat nodig had
Maar die code werkt niet, heb ik ook de type niet verkeerd staan bij de settings?

Code:
The best overloaded method match for 'System.Windows.Forms.ListBox.ObjectCollection.AddRange(object[])' has some invalid arguments
Argument 1: cannot convert from 'System.Collections.Specialized.StringCollection' to 'object[]'
Cannot implicitly convert type 'System.Windows.Forms.ListBox.ObjectCollection' to 'System.Collections.Specialized.StringCollection'
 
Die code is gewoon goed, maar ik dacht dat je het dubbelop probeerde te doen.

Dit werkt:

[cpp] //Laden
foreach (string item in Properties.Settings.Default.list){
listBox1.Items.Add(item);
}

//Opslaan
Properties.Settings.Default.list.Clear();
foreach (string item in listBox1.Items){
Properties.Settings.Default.list.Add(item);
}
Properties.Settings.Default.Save();[/cpp]
 
Laatst bewerkt:
Omdat je de code verkeerd plaatst.

[CPP]public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{
//Laden
foreach (string item in Properties.Settings.Default.list)
{
listBox1.Items.Add(item);
}

//Opslaan
Properties.Settings.Default.list.Clear();
foreach (string item in listBox1.Items)
{
Properties.Settings.Default.list.Add(item);
}
Properties.Settings.Default.Save();
}[/CPP]
 
Kijk eens naar de naam van je StringCollection: C# is hoofdlettergevoelig.

(Bij mij werkt exact dezelfde code wel...)
 
Laatst bewerkt:
Vreemd geval dit.

En als je gewoon een string (of een ander datatype) probeert op te slaan?
 
capture4jo.png

capture5pu.png

Bedoel je op deze manier? ik wist niet hoe ik het anders moest doen :/
maar dit werkt gewoon.
Ik heb ff een klein programmatje gemaakt waarbij je een listbox moet saven, moet ik die anders ff uploaden zodat je de hele code kan zien?
 
Ik zie geen afbeeldingen?
([edit] Nou zie ik ze: Rechtermuisknop > Openen in nieuw tabblad[/edit])

Is goed, upload het project maar, dan kan ik zien waar het nou precies fout gaat.
 
Laatst bewerkt:
Als ik het form uitrek dan krijg ik dit?? :confused:
deypz.png


Wat moet er opgeslagen worden in de ListBox?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan