C#: Jak zapisać listę elementów, takich jak Combobox, do pliku ustawień .NET?C#: Jak zapisać listę elementów, takich jak Combobox, do pliku ustawień .NET?
Odpowiedz
Jeśli mówimy o ustawieniach użytkownika aplikacji, ja bym pętlę przez combobox i zapisać wartości w wyznaczonym wyrażenie:
StringBuilder sb = new StringBuilder();
foreach(var item in combo.Items){
sb.Append(item.ToString() + ";");
}
Properties.Settings.MyListSetting = sb.ToString();
Wybacz jeśli powyższy kod nie jest doskonały, to tylko przykład.
Nadzieję, że pomaga!
Jedynym rodzajem zastosowania, którego można użyć w Projektancie ustawień, jest System.Collections.ArrayList. Jeśli używasz ArrayList, wszystkie typy jego elementów muszą być przekształcane do postaci szeregowej (atrybut Serializowalny lub implementacja System.Runtime.Serialization.ISerializable).
Oto kod pobierający dane z tablicy ArrayList (o nazwie cboCollection) w Ustawieniach do pola kombi iz powrotem.
private void Form1_Load(object sender, EventArgs e)
{
if (Settings.Default.cboCollection != null)
this.comboBox1.Items.AddRange(Settings.Default.cboCollection.ToArray());
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
ArrayList arraylist = new ArrayList(this.comboBox1.Items);
Settings.Default.cboCollection = arraylist;
Settings.Default.Save();
}
//A button to add items to the ComboBox
private int i;
private void button1_Click(object sender, EventArgs e)
{
this.comboBox1.Items.Add(i++);
}
Obiekty Windows Forms nie podlegają przekształcaniu do postaci szeregowej. Dlatego nie można serializować i przechowywać ich w pliku z binarnym formatowaniem. Musisz przechowywać wartości combobox ręcznie w pliku.
string comboboxFileName = @"c:\workDir\settings.settings";
private void saveComboboxInFile (String comboboxFileName)
{
//--------------------------------------------------------
//- Store the combobox values in a file. 1 value = 1 line
//--------------------------------------------------------
try
{
using (StreamWriter comboboxsw = new StreamWriter(comboboxFileName))
{
foreach (var cfgitem in comboBox.Items)
{
comboboxsw.WriteLine(cfgitem);
}
} // End Using`
}
catch (Exception e)
{
//process exception
}
}
private void reloadCombboxFromFile (string comboboxFileName)
{
//-------------------------------------------------
//- Read the values back into the combobox
//-------------------------------------------------
try
{
using (StreamReader comboboxsr = new StreamReader(comboboxFileName))
{
while (!comboboxsr.EndOfStream)
{
string itemread = comboboxsr.ReadLine();
comboBox.Items.Add(itemread);
}
} // End Using
}
catch (DirectoryNotFoundException dnf)
{
// Exception Processing
}
catch (FileNotFoundException fnf)
{
// Exception Processing
}
catch (Exception e)
{
// Exception Processing
}
}
- 1. Jak wymusić WPF ComboBox, aby wyświetlić listę elementów?
- 2. Nie można zapisać pliku ustawień StyleCop
- 3. Jak zapisać UIImage do pliku?
- 4. Jak zapisać obraz kontrolny wykresu do pliku?
- 5. Jak zapisać wyjście pliku AUGraph do pliku?
- 6. Dodawanie elementów do comboBox w WPF
- 7. Jak wyłączyć edycję elementów w combobox dla C#?
- 8. Jak dodać do listy listę elementów w języku C#?
- 9. Jak uzyskać listę wszystkich baz danych z serwera sql w combobox przy użyciu C# .net
- 10. Jak zapisać listę obiektów niestandardowych w pliku NSUserDefaults?
- 11. Jak zapisać wyjście błędów gcc do pliku
- 12. Jak uzyskać listę lokalizacji w .Net
- 13. Przechowuj listę wartości (takich jak zainteresowania)
- 14. Jak zwiększyć wyściółkę wyświetlanych elementów combobox?
- 15. C# - Jak zapisać dane bufora IntPtr do pliku (najszybszy sposób)?
- 16. Jak zapisać obiekt C++ do pliku xml i przywrócić go?
- 17. Stylizacja elementów WPF ComboBox
- 18. Jak zapisać i wyszukać listę "Zablokowanych haseł"
- 19. Dodaj CSS do reagowania utworzonych elementów, takich jak reaktor danych
- 20. Jak zmienić listę rozwijaną ComboBox, aby pasowała do największej pozycji?
- 21. Jak zatrzymać serializację .net JSON, odwołując się do poprzednich elementów?
- 22. Jak zapisać obraz WPF do pliku
- 23. Jak zapisać podsumowanie (lm) do pliku?
- 24. Jak mogę zapisać sesję R do pliku?
- 25. Jak zapisać pliki cookie HtmlUnit do pliku?
- 26. jak zapisać wygenerowaną zawartość DOMPDF do pliku?
- 27. Jak zapisać plik PictureBox.Image do pliku?
- 28. Jak zapisać numpy zamaskowaną tablicę do pliku
- 29. zapisać wiadomość pylint do pliku
- 30. Jak używać OmniXML do zapisywania ustawień aplikacji w pliku xml
Masz na myśli App.Config? –