@using System.Globalization
@inject IJSRuntime JSRuntime
@inject NavigationManager Nav
@code
{
[Inject]
SessionManager sessionManager {get;set;}
CultureInfo[] supportedLanguages = new[]
{
new CultureInfo("en-US"),
new CultureInfo("fr-FR"),
new CultureInfo("ar-AE"),
};
CultureInfo Culture
{
get => CultureInfo.CurrentCulture;
set
{
if (CultureInfo.CurrentCulture != value)
{
var js = (IJSInProcessRuntime)JSRuntime;
js.InvokeVoid("appCulture.set", value.Name);
var cultureInfo = new CultureInfo(value.Name);
CultureInfo.DefaultThreadCurrentCulture = cultureInfo;
CultureInfo.DefaultThreadCurrentUICulture = cultureInfo;
CultureInfo.CurrentCulture = cultureInfo;
//Nav.NavigateTo(Nav.Uri, forceLoad: true);
sessionManager.SendMessage($"culture was changed to '{value.Name}'");
}
}
}
}