Сохранения пользовательских настроек и настроек приложения в WinForms на C#

{lang: 'ru'}

До использования .NET Framework, настройки приложения сохранялись в INI-файлах и реестре Windows. Но в .NET Framework появились гораздо более простые способы работы с XML-файлами. Этот файл называется <имя сборки>.exe.config и находится внутри папки приложения. Такой способ лучше, потому что, когда приложение будет деинсталированно или удалено, конечному пользователю не придется беспокоиться об оставшихся ключах реестра или INI файлов в каталоге Windows.

Каждая настройка имеет четыре свойства: имя, тип, значение и область видимости. Тип может быть типом данных или объектом. Настройка может быть доступна пользователю или приложению. Основное различие между ними заключается в том, что настройки с областью видимости на уровне приложения будут доступны только для чтения во время выполнения, в то время как настройки с пользовательской областью видимости доступны и для чтения и для записи во время выполнения программы.

Создание новых настроек

Чтобы приступить к созданию новых настроек, в обозревателе решений (Solution Explorer) нужно щелкнуть правой кнопкой мыши на файле проекта, выбрать Свойства (Properties), или расширить уже существующий файл с настройками, дважды щелкнув на файле .setting. Затем нужно ввести имя, тип, область видимости и значение для каждого параметра.

image


Манипулирование настроек

Чтобы прочитать и сохранить значение параметра в C#, нужно использовать простсранство имён Properties. В следующем примере есть TextBox и две кнопки, называемые newValueTextBox, displayButton и saveButton соответственно.

Статья написана по материалам этого англоязычного поста.


Полезная статья? Их будет больше, если вы поддержите меня!


  • Андрей

    Статья отстой

  • Андрей

    Статья норм, я тупой мудак :(

  • Дмитрий

    Я тоже мудак! +1

  • Самый простой способ, который приходит в голову — сбросить данные в файл, а при запуске приложения считывать необходимые данные из файла. Второй вариант — работать с базой данных и хранить настройки там.

    • lexpenz

      Ludozhka, вот этот самый простой способ и описан в статье :) Только без создания лишних сущностей.