У меня есть следующий код в SettingsPage.xaml
<ToggleSwitch x:Name="LanguageSwitch" x:Uid="LanguageSwiich"
Header="Switch language"
Margin="2,130,0,0"
IsOn="{Binding IsFullScreen, Mode=TwoWay}"
OffContent="English"
OnContent="Franche"
RelativePanel.AlignLeftWithPanel="True"
RelativePanel.AlignTopWithPanel="True" />
И добавил это в SettingsService.cs следующие коды только для тестирования
public bool IsEnglish
{
get { return _helper.Read<bool>(nameof(IsEnglish), true); }
set
{
_helper.Write(nameof(IsEnglish), value);
Views.Shell.HamburgerMenu.IsFullScreen = value;
}
}
И добавил это в SettingsPageViewModel.cs
public bool IsEnglish
{
get { return _settings.IsEnglish; }
set
{
_settings.IsEnglish = value;
base.RaisePropertyChanged();
if (value)
{
var culture = new CultureInfo("fr");
Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = culture.Name;
CultureInfo.DefaultThreadCurrentCulture = culture;
CultureInfo.DefaultThreadCurrentUICulture = culture;
}
else
{
var culture = new CultureInfo("en-US");
}
}
}
Работает для IsFullScreen, но я хочу изменить язык вместо полноэкранного режима.
Добавлен последний код в App.xaml.cs
var IsEnglish = _settings.IsEnglish;
Итак, что я должен изменить здесь в своем коде, чтобы он работал.