.NET 4.x Не сохраняются все настройки в почтовой программе - C#

Узнай цену своей работы

Формулировка задачи:

Пишу почтовик. На одном из этапов появилась идея - сохранять/загружать письма локально. Реализовал. Но путь сохранений прописывал программно, теперь же захотелось, чтоб юзер мог выбирать папку для сохранений, выбор бы запоминался до следующего раза. Для начала решил попробовать с вложениями. На вкладке Параметры в свойствах проекта создал строковый параметр DefaultAttachmentFolder с публичным модификатором, далее в форме добавил лейбл, куда будет выводиться путь, кнопку выбора папки, кнопку сохранения и folderBrowserDialog1. Написал такой код:
Листинг программы
  1. public partial class Options : Form
  2. {
  3. string folderName;
  4. public Options()
  5. {
  6. InitializeComponent();
  7. label8.Text += "\r\n" + Properties.Settings.Default.DefaultAttachmentFolder;
  8. }
  9. private void button1_Click(object sender, EventArgs e)
  10. {
  11. Properties.Settings.Default.DefaultAttachmentFolder = folderName;
  12. Properties.Settings.Default.Save();
  13. MessageBox.Show("Changes successfully saved.");
  14. Close();
  15. }
  16. private void button3_Click(object sender, EventArgs e)
  17. {
  18. DialogResult result = folderBrowserDialog1.ShowDialog();
  19. if (result == DialogResult.OK)
  20. {
  21. folderName = folderBrowserDialog1.SelectedPath;
  22. label8.Text = "Attachments default folder:\r\n" + folderName;
  23. }
  24. }
  25. }
Все работает нормально. Далее, решил провернуть такой же трюк и для писем. Создал еще лабел, кнопку папки, folderBrowserDialog2. Ну и параметр DefaultSavedMessagesFolder. Написал:
Листинг программы
  1. public partial class Options : Form
  2. {
  3. string folderName;
  4. string folderName1;
  5. public Options()
  6. {
  7. InitializeComponent();
  8. label8.Text += "\r\n" + Properties.Settings.Default.DefaultAttachmentFolder;
  9. label9.Text += "\r\n" + Properties.Settings.Default.DefaultSavedMessagesFolder;
  10. }
  11. private void button1_Click(object sender, EventArgs e)
  12. {
  13. Properties.Settings.Default.DefaultAttachmentFolder = folderName;
  14. Properties.Settings.Default.DefaultSavedMessagesFolder = folderName1;
  15. Properties.Settings.Default.Save();
  16. MessageBox.Show("Changes successfully saved.");
  17. Close();
  18. }
  19. private void button4_Click(object sender, EventArgs e)
  20. {
  21. DialogResult result = folderBrowserDialog2.ShowDialog();
  22. if (result == DialogResult.OK)
  23. {
  24. folderName1 = folderBrowserDialog2.SelectedPath;
  25. label9.Text = "Attachments default folder:\r\n" + folderName1;
  26. }
  27. }
  28. }
И... не работает! Т.е., при запуске формы, текст на метке8 отображается полностью (пояснение + путь), а на метке9 - только пояснение. Пути программа не видит. Дальше - больше: при нажатиии на кнопку4 и послед. выбора папки, значение вроде бы сохраняется... Но после закрытия и последующего открытия формы уже не виден путь метки8, но виден путь в метке9. При попытке назнаяить путь-8 програ забывает путь-9 и наоборот, и т.д. Что я делаю не так?

Решение задачи: «.NET 4.x Не сохраняются все настройки в почтовой программе»

textual
Листинг программы
  1. folderName = Properties.Settings.Default.DefaultAttachmentFolder;
  2. folderName1 = Properties.Settings.Default.DefaultSavedMessagesFolder;

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.889 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы