![]() |
VOOZH | about |
dotnet add package I18N.Avalonia.Prism --version 1.0.2
NuGet\Install-Package I18N.Avalonia.Prism -Version 1.0.2
<PackageReference Include="I18N.Avalonia.Prism" Version="1.0.2" />
<PackageVersion Include="I18N.Avalonia.Prism" Version="1.0.2" />Directory.Packages.props
<PackageReference Include="I18N.Avalonia.Prism" />Project file
paket add I18N.Avalonia.Prism --version 1.0.2
#r "nuget: I18N.Avalonia.Prism, 1.0.2"
#:package I18N.Avalonia.Prism@1.0.2
#addin nuget:?package=I18N.Avalonia.Prism&version=1.0.2Install as a Cake Addin
#tool nuget:?package=I18N.Avalonia.Prism&version=1.0.2Install as a Cake Tool
| License | 👁 Image |
| Builds | 👁 Image 👁 Image 👁 Image |
| .NET Core | 👁 Image 👁 Image 👁 Image 👁 Image 👁 Image 👁 Image |
| Avalonia | 👁 Image 👁 Image |
| Core | 👁 alternate text is missing from this package README image |
| Prism | 👁 alternate text is missing from this package README image |
| Reactive | 👁 alternate text is missing from this package README image |
| Prism | ReactiveUi |
|---|---|
| 👁 Image |
👁 Image |
protected override void RegisterTypes(IContainerRegistry containerRegistry)
{
containerRegistry.RegisterInstance<ILocalizer>(new Localizer(Properties.Resource.ResourceManager));
}
Include prism internationalizing module by .axaml
xmlns:i18N="clr-namespace:I18N.Avalonia.Prism;assembly=I18N.Avalonia.Prism"
<StackPanel>
<TextBlock Text="{i18N:PrismLocalization Welcome}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0, 24, 0,24"
FontSize="17"
FontWeight="Heavy" />
<Button Content="{i18N:PrismLocalization English}"
Margin="0,0,0,8"
Command="{Binding SwitchLanguage}"
CommandParameter="en"/>
<Button Content="{i18N:PrismLocalization German}"
Margin="0,0,0,8"
Command="{Binding SwitchLanguage}"
CommandParameter="de"/>
</StackPanel>
public override void RegisterServices()
{
base.RegisterServices();
Locator.CurrentMutable.RegisterLazySingleton(() => new Localizer(Properties.Resource.ResourceManager), typeof(ILocalizer));
}
Include reactive internatinalizing module by .axaml
xmlns:i18N="clr-namespace:I18N.Avalonia.ReactiveUi;assembly=I18N.Avalonia.ReactiveUi"
<StackPanel>
<TextBlock Text="{i18N:ReactiveUiLocalization Welcome}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0, 24, 0,24"
FontSize="17"
FontWeight="Heavy" />
<Button Content="{i18N:ReactiveUiLocalization English}"
Margin="0,0,0,8"
Command="{Binding SwitchLanguage}"
CommandParameter="en"/>
<Button Content="{i18N:ReactiveUiLocalization German}"
Margin="0,0,0,8"
Command="{Binding SwitchLanguage}"
CommandParameter="de"/>
</StackPanel>
public LanguageViewModel(ILocalizer i18N)
{
i18N.LanguageChangedNotification += OnLanguageChangedNotification;
}
private void OnLanguageChangedNotification()
{
Console.WriteLine(@"Change language to" + _localizer.Language.TwoLetterISOLanguageName);
// Your binding can be changed here or notify property changed can be called to refresh
}
public LanguageViewModel(ILocalizer i18N)
{
i18N.Language = new CultureInfo("de");
}
Thanks to Sakya which has written this nice blog to understand this behavior and to build a nuget package with some changes.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 net5.0 was computed. net5.0-windows net5.0-windows was computed. net6.0 net6.0 is compatible. net6.0-android net6.0-android was computed. net6.0-ios net6.0-ios was computed. net6.0-maccatalyst net6.0-maccatalyst was computed. net6.0-macos net6.0-macos was computed. net6.0-tvos net6.0-tvos was computed. net6.0-windows net6.0-windows was computed. net7.0 net7.0 is compatible. net7.0-android net7.0-android was computed. net7.0-ios net7.0-ios was computed. net7.0-maccatalyst net7.0-maccatalyst was computed. net7.0-macos net7.0-macos was computed. net7.0-tvos net7.0-tvos was computed. net7.0-windows net7.0-windows was computed. net8.0 net8.0 is compatible. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 is compatible. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 was computed. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
| .NET Core | netcoreapp3.1 netcoreapp3.1 is compatible. |
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.