@ Ответ CSharper не сработал для моего WPF-приложения, написанного на VB.NET (не на C #, в отличие от, по-видимому, 99,999% других WPF-приложений), поскольку я получил постоянную ошибку компилятора с жалобой на то, что Settings
не удалось найти в MyApp.Properties
пространство имен, которое не исчезнет даже после перестройки.
После многих поисков в Интернете у меня сработало использование пространства имен local
XAML, созданного по умолчанию в файле XAML главного окна моего приложения:
<Window
<!-- Snip -->
xmlns:local="clr-namespace:MyApp"
<!-- Snip -->
><!-- Snip --></Window>
... и привязать к нему мои настройки, используя что-то вроде следующего (где MyBooleanSetting
- это настройка, которую я определил в свойствах моего проекта типа Boolean
и область User, с модификатором доступа Friend по умолчанию):
<CheckBox IsChecked="{Binding Source={x:Static local:MySettings.Default}, Path=MyBooleanSetting, Mode=TwoWay}"
Content="This is a bound CheckBox."/>
Чтобы убедиться, что настройки действительно сохранены, обязательно позвоните
MySettings.Default.Save()
... где-то в вашем коде (например, в событии Me.Closing
для вашего файла MainWindow.xaml.vb
).
(Ссылка на сообщение на форуме Visual Studio для вдохновения; см. Ответ Мухаммеда Сиддики.)