Как заставить программу VS 2019 запомнить предыдущие настройки экземпляра?

#c# #visual-studio #button #themes #preferences

#c# #visual-studio #кнопка #темы #предпочтения #настройки

Вопрос:

В настоящее время я создаю текстовый редактор и создал светлую и темную тему, которую вы можете изменить нажатием кнопки. Тема по умолчанию light, но я хочу, чтобы она помнила, какая тема была последней, которую я выбрал. Итак, если я выберу темный и закрою его, в следующий раз он откроется с включенной этой темой.

Я также хочу знать, как заставить ее запоминать вещи в целом.

Комментарии:

1. Взгляните на настройки . Кроме того, этот вопрос не имеет никакого отношения к Visual Studio (которая просто является вашей средой разработки), поэтому, пожалуйста, удалите тег и отредактируйте заголовок.

Ответ №1:

Попробуйте заглянуть в Properties.Settings .

 //Sets a string created in the setting
Properties.Settings.Default.FirstString = "Hello World";
//saves the property , this setting will then persist after closing the aplication.
Properties.Settings.Default.Save();
  

Ответ №2:

Мы можем сохранить «тему» в настройках через Project -> Project Properties… -> Settings .

И создайте параметр с именем «Theme», установите его значение в «Light».

введите описание изображения здесь

Затем мы можем получить доступ к «Теме» с помощью следующего кода.

 private void btnChangeTheme_Click(object sender, EventArgs e)
{
    if(Properties.Settings.Default.Theme == "Light")
    {
        Properties.Settings.Default.Theme = "Dark";
    }
    else
    {
        Properties.Settings.Default.Theme = "Light";
    }

    string theme = Properties.Settings.Default.Theme;
    // if(theme == "Light"){...}else{...}
    // here is the code that modify theme
    // ...
    Properties.Settings.Default.Save();
}

private void Form1_Load(object sender, EventArgs e)
{
    // load theme
    string theme = Properties.Settings.Default.Theme;
    // if(theme == "Light"){...}else{...}
    // here is the code that modify theme
    // ...
}
  

Комментарии:

1. Подождите, это для Visual Studio или для моей собственной программы? Я создал кнопку, которая изменяет свойства, такие как цвет задней панели RichTextBox. Значит, это заставляет ее запоминать изменения?

2. @alex12 Используется для сохранения данных программы. Чтобы сохранить информацию о цвете, просто создайте новую настройку для сохранения «RGB».