Есть ли способ сохранить только одну переменную по умолчанию в моих настройках? Я знаю, что есть команда Properties.Settings.Default.Save();
, но я хочу сохранить изменение только одной из моих переменных Settings, а не всех из них.WPF: Как сохранить только одну переменную настройки?
ответ
Нет, невозможно сохранить индивидуальное значение свойства в объекте Settings
, создаваемом конструктором. Вы можете сохранить только весь объект или вообще ничего.
Обратите внимание, что настройки сохраняются в файле XML, что в любом случае приведет к тому, что выписать одно значение нецелесообразно. Обратите внимание, что запись этого XML-файла относительно дешева; это типично крошечный файл (если вы не сериализуете какую-то огромную часть данных в свой объект Settings
) и могут быть написаны много раз, мало повлияет на производительность вашей программы (особенно если вы только пишете ее в ответ на действия пользователя и hellip , пользователи очень медленны, по сравнению с компьютером).
Вы должны, в общем, не отложить запись объекта Settings
до выхода программы. Весьма целесообразно называть Settings.Default.Save()
в любое время, когда будет изменен любой параметр (или группа настроек), чтобы убедиться, что настройки на самом деле сохраняются на диске независимо от того, что происходит позже в программе (например, он сбой).
Наконец, обратите внимание, что с точки зрения конкретного сценария – один флаг, который указывает, является ли или не показывать меню, а другой флаг, который указывает, является ли сохраняться это значение или нет – вам не обязательно нужно добавить еще другой флаг в другом месте и условно сохранить на основе первого флага.
Вместо этого просто сохраните два флага в объекте Settings
, например. Settings.Default.RememberMenuVisibleSettings
и Settings.Default.MenuVisible
. Затем, когда вы запускаете свою первую программу, вы можете проверить RememberMenuVisibleSettings
, и если она установлена в false
, просто введите MenuVisible
в значение по умолчанию, переопределив все, что было сохранено в файле настроек. Тогда остальная часть вашей программы не должна беспокоиться об этом; после этого не должно возникать особой обработки любого флага. Вы можете просто сохранить как обычно, так и уверенность в том, что когда программа запустится снова, она пойдет правильно.
Ваш вопрос намекает на проблемы дизайна:
пользователи ожидают четкого абстракцию с настройками:
- Загрузить все настройки при запуске программы
- Возможно изменение параметров во время выполнения программы
- сохранить все до выхода программы
Если вам нужно что-нибудь например «редактировать некоторые значения, но не сохранять в качестве настроек», тогда вы должны ввести дополнительный слой, который делает именно это: позволяет изменять некоторые значения без изменения настроек.
- 1. Как сохранить одну переменную настойчиво?
- 2. WPF Сохранить настройки
- 3. Как сохранить значения в одну переменную
- 4. Как сделать одну переменную = две другие, а не только одну
- 5. Как сохранить переменную, как только программа завершилась
- 6. Как сохранить настройки GVIM?
- 7. заменить только одну переменную в шаблонах web.py
- 8. Создайте эту последовательность, используя только одну переменную
- 9. Как сохранить настройки программы?
- 10. Как сохранить настройки
- 11. Rnd() возвращает только одну переменную в массиве
- 12. Rails form отображает только одну переменную
- 13. Как сохранить результаты цикла "for" в одну переменную?
- 14. Как сохранить пользовательские настройки?
- 15. Как сохранить настройки Report.Document.Printer?
- 16. Как сохранить настройки приложения?
- 17. Как сохранить настройки Emacs?
- 18. Как сохранить настройки затмения?
- 19. Как сохранить настройки mysql?
- 20. Как сохранить пользовательские настройки
- 21. Как сохранить настройки игры?
- 22. Как сохранить настройки приложения?
- 23. Показать% строки в Excel, но отображать только одну переменную
- 24. Как изменить только одну мимолетную переменную в OnClick событие Jquery
- 25. Python: Как передать только одну переменную в функцию лямбда?
- 26. Perl - прочитайте входной канал как одну переменную
- 27. Как сохранить пользовательские настройки в надстройке excel
- 28. WPF Visual для метода документа XPS создает только одну страницу
- 29. C# Treeview, как сохранить только одну корневую линию?
- 30. Как сохранить только одну строку таблицы, удалив повторяющиеся строки?
просто обновите только один токен перед вызовом Properties.Settings.Default.Save(). –
Хорошо, но когда я меняю более одной из переменных Settings, и чем я хочу сохранить только один из них, есть ли способ приблизиться к этому? Я мог бы, возможно, сохранить значение этой переменной во временную переменную, чем перезагрузить настройки, а не сохранять только изменение этого ... – MartinVotruba
Ну, почему вы хотите изменить значение параметра, если вы не хотите его сохранять? –