Сохранение значений Radiobutton для настройки положения формы с помощью кнопки в C# Winforms
У меня есть главная форма, на которой есть кнопка для перехода к форме с настройками. На этой форме с настройками есть кнопка изменения цвета формы, кнопка изменения шрифта и кнопка применения изменений, а также GroupBox с 4-мя radiobutton'ами, при помощи которых можно изменить положение этой и главной формы. Как можно при помощи кнопки применения изменений сохранить значения Radiobutton'ов, чтобы при повторном открытии формы настроек был выбран ранее нажатый radiobutton?
Ответы (2 шт):
Ответ зависит от того как вы открываете форму во второй раз.
- Если заново создаете - то перед тем как закрыть в первый раз форму сохраняйте состояние и заполняйте поля, значения во время создания второй формы и показываете.
- Если вы скрываете форму то во время нажатия кнопки устанавливаете
radioButton1.Checked = true;
Если вы работаете в Visual Studio, то:
1.В свойствах проекта необходимо сохранить параметр пользовательских настроек.
Проект - Свойства проекта - Имя: chk, Тип: bool, Область: Пользователь
2.В коде формы написать:
private void button1_Click(object sender, EventArgs e)
{
Properties.Settings.Default.chk = radioButton1.Checked;
Properties.Settings.Default.Save();
}
private void Form3_Load(object sender, EventArgs e)
{
radioButton1.Checked = Properties.Settings.Default.chk;
}
3.В событиях формы в режиме конструктора указать ссылки:
Для кнопки - Действие - Click: button1_Click
Для формы - Поведение - Load: Form3_Load
Обратите внимание, что radioButton после его включения изменить значение нельзя, а checkBox можно. Поэтому необходимо для radioButton написать условие (при котором radioButton1 становится false, когда значение radioButton2 - true), либо использовать checkBox. Замените radioButton1 на checkBox1 и будет вам счастье.
Выбранные пользователем параметры хранятся в файле App.config.