2012-04-13 2 views
1

Если я создаю параметр приложения уровня пользователя и привязываю его к текстовому полю формы, то введите что-то в текстовое поле, значение будет автоматически сохранено и при запуске приложения снова значение появляется в текстовом поле. Этого не происходит, когда я использую параметр как приложение.Область применения: область применения - приложение vs приложение

Почему параметры области приложения не сохраняются автоматически, как настройки пользовательского охвата?

Если это по дизайну, как я могу вручную сохранить эти настройки и загрузить их во время выполнения?

ответ

4

Вкратце, настройки области приложения не могут быть изменены во время выполнения, в то время как настройки пользовательского охвата, предназначенные для программирования, должны быть прочитаны/записаны во время выполнения. Есть целый ряд альтернатив с помощью приложения контекстных настроек:

  • Использования пользователя настройки области видимости
  • This поста рекомендует глядя в класс ConfigurationManager.
  • Если вам не нравится пользователю области видимости параметров, потому что они не записываются в каталог приложения вы можете реализовать собственные SettingsProvider и они написаны, где бы вы хотели

This post имеет некоторые рекомендации о том, как лучше всего управлять настройками. Наконец, вот Microsoft's documentation в архитектуре настроек, если вы заинтересованы в расширении или сворачивании своих собственных.

+0

Так что настройки области приложения должны быть установлены во время разработки через окно свойств, а затем оставлены в покое? Они не записываются на диск, а затем загружаются из файла во время выполнения? –

+0

@YourMother вид. Значения по умолчанию для параметров области приложения будут скомпилированы в ваше приложение (см. Папку «Свойства» -> «Настройки», где разработчик записывает ваши настройки). Эти значения также могут быть переопределены в файле MyApp.exe.config после компиляции приложения. –

+0

Спасибо. Я тестировал это, и это похоже на то, как это работает. Я действительно могу переопределить значение по умолчанию, редактируя файл .exe.config . Мой вопрос: если я удалю этот файл, то приложение, похоже, снова загрузит значение по умолчанию. Поэтому он, похоже, скомпилирован в приложение. Что произойдет, если файл конфигурации был случайно удален, и он был отредактирован с новыми значениями? Может ли он снова восстановиться со значениями по умолчанию? Просто пытаюсь понять поведение. –

Смежные вопросы