Lokalizovat příkazy nabídky
Lokalizovaný text pro příkazy nabídek a panelů nástrojů můžete zadat tak, že vytvoříte lokalizované soubory .vsct a lokalizované soubory .resx pro balíček VSPackage a pak aktualizujete soubory projektu tak, aby zahrnovaly změny.
Informace o tom, jak lokalizovat prostředí instalace, naleznete v tématu Lokalizace balíčků VSIX.
Lokalizace názvů příkazů
V balíčku VSPackages jsou příkazy nabídky a tlačítka panelu nástrojů definovány v souboru .vsct .
V Průzkumník řešení změňte název souboru .vsct z názvu souboru.vsct na název souboru.en-US.vsct.
Vytvořte kopii souboru.en-US.vsct pro každý lokalizovaný jazyk.
Pojmenujte každý název souboru kopírování .{ Národní prostředí}.vsct, kde {Locale} je konkrétní název jazykové verze. Seznam hodnot názvu jazykové verze najdete v tématu ID národního prostředí přiřazené Microsoftem.
Tento název souboru. Soubory locale.vsct budou obsahovat lokalizovaný text nabídky pro váš balíček.
Otevřete každý název souboru. Soubor locale.vsct pro lokalizaci textu
Upravte hodnoty elementu ButtonText podle potřeby pro konkrétní jazyk.
Pokud zadáte lokalizované ikony, upravte hodnoty Bitmap tak, aby odkazy na cílové soubory.
Následující příklad ukazuje text anglického a španělského tlačítka pro příkaz k otevření okna nástroje Family Tree Explorer.
[FamilyTree.en-US.vsct]
<Button guid="guidLocalizedPackageCmdSet" id="cmdidFamilyTree" priority="0x0100" type="Button"> <Parent guid="guidSHLMainMenu" id="IDG_VS_WNDO_OTRWNDWS1"/> <Icon guid="guidImages" id="bmpPic2" /> <Strings> <CommandName>cmdidFamilyTree</CommandName> <ButtonText>Family Tree Explorer</ButtonText> </Strings> </Button>
[FamilyTree.es-ES.vsct]
<Button guid="guidLocalizedPackageCmdSet" id="cmdidFamilyTree" priority="0x0100" type="Button"> <Parent guid="guidSHLMainMenu" id="IDG_VS_WNDO_OTRWNDWS1"/> <Icon guid="guidImages" id="bmpPic2" /> <Strings> <CommandName>cmdidFamilyTree</CommandName> <ButtonText>Explorar el arbol genealogico</ButtonText> </Strings> </Button>
Lokalizace jiných textových prostředků
Textové prostředky jiné než názvy příkazů jsou definovány v souborech prostředků (.resx).
Přejmenujte VSPackage.resx na VSPackage.en-US.resx.
Vytvořte kopii souboru VSPackage.en-US.resx pro každý lokalizovaný jazyk.
Pojmenujte každou kopii balíčku VSPackage.{ Locale}.resx, kde {Locale} je konkrétní název jazykové verze.
Přejmenujte Resources.resx na Resources.en-US.resx.
Vytvořte kopii souboru Resources.en-US.resx pro každý lokalizovaný jazyk.
Pojmenujte každou kopii zdroje.{ Locale}.resx, kde {Locale} je konkrétní název jazykové verze.
Otevřete každý soubor .resx a upravte řetězcové hodnoty podle potřeby pro konkrétní jazyk a jazykovou verzi. Následující příklad ukazuje definici lokalizovaného prostředku pro záhlaví okna nástroje.
[Resources.en-US.resx]
<data name="ToolWindowTitle" xml:space="preserve"> <value>Family Tree Explorer</value> </data>
[Resources.es-ES.resx]
<data name="ToolWindowTitle" xml:space="preserve"> <value>Explorador del arbol genealogico</value> </data>
Začlenění lokalizovaných zdrojů do projektu
Soubor assemblyinfo.cs a soubor projektu je nutné upravit tak, aby zahrnoval lokalizované prostředky.
Z uzlu Vlastnosti v Průzkumník řešení otevřete v editoru soubor assemblyinfo.cs nebo assemblyinfo.vb.
Přidejte následující položku.
[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
Nastaví se angličtina v USA jako výchozí jazyk.
Uvolněte projekt.
Otevřete soubor projektu v editoru.
V kořenovém
Project
elementu přidejtePropertyGroup
prvek s elementemUICulture
, který odpovídá vašemu výchozímu jazyku.<PropertyGroup> <UICulture>en-US</UICulture> </PropertyGroup>
Tato možnost nastaví angličtinu v USA jako výchozí jazykovou verzi uživatelského rozhraní pro ovládací prvky Windows Presentation Foundation (WPF).
ItemGroup
Vyhledejte prvek, který obsahujeEmbeddedResource
elementy.V elementu
EmbeddedResource
, který volá VSPackage.en-US.resx, nahraďteManifestResourceName
prvek elementemLogicalName
, který je nastaven naVSPackage.en-US.Resources
, následujícím způsobem:<EmbeddedResource Include="VSPackage.en-US.resx"> <MergeWithCTO>true</MergeWithCTO> <LogicalName>VSPackage.en-US.Resources</LogicalName> </EmbeddedResource>
Pro každý lokalizovaný jazyk zkopírujte
EmbeddedResource
element proVsPackage.en-US
a nastavte Include atribut a LogicalName prvku kopie na cílové národní prostředí.Do každého lokalizovaného
VSCTCompile
prvku přidejteResourceName
prvek, který odkazuje naMenus.ctmenu
, jak je znázorněno v následujícím příkladu:<ItemGroup> <VSCTCompile Include="LocalizedPackage.es-ES.vsct"> <ResourceName>Menus.ctmenu</ResourceName> </VSCTCompile> </ItemGroup>
Uložte soubor projektu a znovu načtěte projekt.
Sestavte projekt.
Tím se vytvoří hlavní sestavení a sestavení prostředků pro každý jazyk. Informace o lokalizaci procesu nasazení najdete v tématu Lokalizace balíčků VSIX.