나는이 SettingsPage.xaml템플릿 (10) 스위치 언어
에 다음 코드<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;
에
추가 된 마지막 코드는 그래서 만들어 내 코드에 여기 변경해야 어떤 일했다.
감사합니다. 사용자가 2 언어간에 변경할 수있는 SettingsPage.xaml에서 설정을 만들고 싶습니다. 나는 언어를 바꾸기 위해 일할 수있는 선택권을 생각할 수 없다. 그것은 내 문제이다. 어쩌면 영어로 2 개, 프랑스어로 2 개를 선택하는 드롭 다운을하는 것이 더 좋습니다. 사용자가 영어로 변경 한 영어를 선택하거나 프랑스어를 선택한 다음 프랑스어로 변경하면이 드롭 다운을 이해할 수 없습니다. 그럼 어떻게 남자가 그 일을 할 수 있는지 생각 해봐? – Alex
저는 var culture = new CultureInfo ("fr-FR")에서 var culture = new CultureInfo ("en-US")로 코드를 변경하면 Resources 파일을 가지고 잘 작동합니다. – Alex
위의 코드는 의심 스럽습니다 ... 코드는 'true'와 'false'의 경우 대칭이 아닙니다. 또한 속성이 동일한 값으로 설정된 경우 코드가 실제 변경 사항을 확인하지 않으므로 시간이 낭비됩니다. – Phil1970