.NET 4.x Не сохраняются все настройки в почтовой программе - C#
Формулировка задачи:
Пишу почтовик. На одном из этапов появилась идея - сохранять/загружать письма локально.
Реализовал. Но путь сохранений прописывал программно, теперь же захотелось, чтоб юзер мог выбирать папку для сохранений, выбор бы запоминался до следующего раза.
Для начала решил попробовать с вложениями. На вкладке Параметры в свойствах проекта создал строковый параметр DefaultAttachmentFolder с публичным модификатором, далее в форме добавил лейбл, куда будет выводиться путь, кнопку выбора папки, кнопку сохранения и folderBrowserDialog1.
Написал такой код:
Все работает нормально. Далее, решил провернуть такой же трюк и для писем.
Создал еще лабел, кнопку папки, folderBrowserDialog2. Ну и параметр DefaultSavedMessagesFolder.
Написал:
И... не работает! Т.е., при запуске формы, текст на метке8 отображается полностью (пояснение + путь), а на метке9 - только пояснение. Пути программа не видит.
Дальше - больше: при нажатиии на кнопку4 и послед. выбора папки, значение вроде бы сохраняется... Но после закрытия и последующего открытия формы уже не виден путь метки8, но виден путь в метке9. При попытке назнаяить путь-8 програ забывает путь-9 и наоборот, и т.д.
Что я делаю не так?
public partial class Options : Form
{
string folderName;
public Options()
{
InitializeComponent();
label8.Text += "\r\n" + Properties.Settings.Default.DefaultAttachmentFolder;
}
private void button1_Click(object sender, EventArgs e)
{
Properties.Settings.Default.DefaultAttachmentFolder = folderName;
Properties.Settings.Default.Save();
MessageBox.Show("Changes successfully saved.");
Close();
}
private void button3_Click(object sender, EventArgs e)
{
DialogResult result = folderBrowserDialog1.ShowDialog();
if (result == DialogResult.OK)
{
folderName = folderBrowserDialog1.SelectedPath;
label8.Text = "Attachments default folder:\r\n" + folderName;
}
}
}public partial class Options : Form
{
string folderName;
string folderName1;
public Options()
{
InitializeComponent();
label8.Text += "\r\n" + Properties.Settings.Default.DefaultAttachmentFolder;
label9.Text += "\r\n" + Properties.Settings.Default.DefaultSavedMessagesFolder;
}
private void button1_Click(object sender, EventArgs e)
{
Properties.Settings.Default.DefaultAttachmentFolder = folderName;
Properties.Settings.Default.DefaultSavedMessagesFolder = folderName1;
Properties.Settings.Default.Save();
MessageBox.Show("Changes successfully saved.");
Close();
}
private void button4_Click(object sender, EventArgs e)
{
DialogResult result = folderBrowserDialog2.ShowDialog();
if (result == DialogResult.OK)
{
folderName1 = folderBrowserDialog2.SelectedPath;
label9.Text = "Attachments default folder:\r\n" + folderName1;
}
}
}Решение задачи: «.NET 4.x Не сохраняются все настройки в почтовой программе»
textual
Листинг программы
folderName = Properties.Settings.Default.DefaultAttachmentFolder; folderName1 = Properties.Settings.Default.DefaultSavedMessagesFolder;