Сохранение значений Radiobutton для настройки положения формы с помощью кнопки в C# Winforms

У меня есть главная форма, на которой есть кнопка для перехода к форме с настройками. На этой форме с настройками есть кнопка изменения цвета формы, кнопка изменения шрифта и кнопка применения изменений, а также GroupBox с 4-мя radiobutton'ами, при помощи которых можно изменить положение этой и главной формы. Как можно при помощи кнопки применения изменений сохранить значения Radiobutton'ов, чтобы при повторном открытии формы настроек был выбран ранее нажатый radiobutton?


Ответы (2 шт):

Автор решения: Aziz Umarov

Ответ зависит от того как вы открываете форму во второй раз.

  1. Если заново создаете - то перед тем как закрыть в первый раз форму сохраняйте состояние и заполняйте поля, значения во время создания второй формы и показываете.
  2. Если вы скрываете форму то во время нажатия кнопки устанавливаете radioButton1.Checked = true;
→ Ссылка
Автор решения: Anastasia

Если вы работаете в 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.

→ Ссылка