Lokalizujeme Windows 10 Universal App s Multilingual App Toolkit 4

Tento článek je pokračováním Lokalizujeme aplikace ve Visual Studio s Multilingual App Toolkit 4. Soubory *.resw jsme si vytvořili minule, nyní budeme pracovat s tímto jejich obsahem:
Anglicke prostredky UWP
Přeložené je to pak takto:
AnglickeCasy czech xlf
Pamatujte na to že každé sestavení má vlastní soubory *.resw a *.xlf. Nemůžete nijak používat jazykové prostředky jiného sestavení. Zde nebudeme příliš experimentovat, pokud uživatel bude mít české jazykové preference, zobrazí se mu čeština, všem ostatním angličtina. 1 – Vytvořte si instanci Windows.ApplicationModel.Resources.ResourceLoader, nejlépe v globálním rozsahu a pokud to bude možné, předávejte ji parametry metod všude kde budete chtít využít překlad. Zvýšíte tím výkon vaší app.

public ResourceLoader loader = new ResourceLoader();

Když budete chtít načítat překlady v jiném projektu(zde je “apps”), musíte specifikovat název ResourceMap:

static ResourceLoader loader = ResourceLoader.GetForCurrentView("apps/Resources");

2 – Napište do xaml kódu definici vašeho prvku. Pokud chcete doplnit text bez C#, použijte x:Uid.

Pokud s C# tak x:Name. Samozřejmě můžete použít oba dva a to i s odlišnými názvy.

<Button x:Name="btnMenu" x:Uid="btnMenu" Click="btnMenu_Click"> </Button> 

3 – Máme handler události Click, protože po kliknutí se text tlačítka změní.

private void btnMenu_Click(object sender, RoutedEventArgs e)
{
    btnMenu.Content = loader.GetString("BeautifulLife");
}

4 – Kocháme se výsledkem.
AnglickeCasy before click
Po kliknutí se text jak všichni víme změní:
AnglickeCasy after click