Вы можете использовать настройки приложения достаточно легко.
Если вы еще этого не сделали, просто щелкните правой кнопкой мыши по проекту и выберите «Свойства». Выберите вкладку «Настройки». Убедитесь, что вы выбрали «Пользователь» для области (в противном случае настройка доступна только для чтения).
Код для доступа к этому прост:
forms.Width = Application1.Properties.Settings.Default.Width;
Если вам нужно сохранить его:
Application1.Properties.Settings.Default.Width = forms.Width;
Application1.Properties.Settings.Default.Save();
В приведенном выше примере Width - это имя пользовательской настройки, которое вы определяете на вкладке Settings, а Application1 - пространство имен вашего приложения.
Редактировать: Отвечая на дополнительные вопросы
Вы упомянули, что хотите сохранить объекты словаря в настройках. Как вы обнаружили, вы не можете сделать это напрямую, потому что объекты Dictionary не сериализуемы. Однако вы можете довольно легко создать свой собственный сериализуемый словарь. У Пола Вельцера был отличный пример в его блоге .
У вас есть пара ссылок, которые немного запутывают ситуацию. Ваш оригинальный вопрос, где сохранить «Файлы предпочтений пользователя». Я вполне уверен, что намерение Microsoft с функциональностью «Настройки» заключается именно в том, чтобы ... хранить настройки скина пользователя, варианты макета и т. Д. Он не имел в виду универсальный репозиторий для данных приложения, хотя таким способом можно было легко злоупотреблять.
Данные хранятся в отдельных местах по уважительной причине. Некоторые из настроек являются настройками приложения и доступны только для чтения. Это настройки, которые должны работать в приложении, но не привязанные к конкретному пользователю (например, URI для ресурсов приложения или, возможно, налоговая ставка). Они хранятся в app.config.
Пользовательские настройки хранятся в скрытом каталоге глубоко в папке User Document / Settings. Значения по умолчанию хранятся в app.config (я думаю, я не могу их вспомнить наверняка), но любые пользовательские изменения хранятся в их личной папке. Это предназначено для данных, которые изменяются от пользователя к пользователю. (Под «пользователем» я имею в виду пользователя Windows, а не пользователя вашего приложения.)
Надеюсь, это прояснило это для вас. Система на самом деле довольно проста. Сначала это может показаться немного чуждым, но после нескольких дней его использования вам никогда не придется думать об этом снова ... это просто работает.