@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}'"); } } } }