當地語系化的功能表命令
如需 Visual Studio 2017 的最新文件請參閱 Visual Studio 2017 文件。
當地語系化的文字提供功能表和工具列建立當地語系化的.vsct 檔的命令和當地語系化的.resx 檔的 VSPackage,然後再更新專案檔的變更。
如需如何當地語系化安裝體驗的詳細資訊,請參閱當地語系化 VSIX 套件。
當地語系化的命令名稱
在 Vspackage 中,功能表命令和工具列按鈕是.vsct 檔中定義的。
在方案總管] 中,變更從.vsct 檔的名稱filename至.vsct檔名.en US.vsct。
建立一份filename.en-US.vsct 每個當地語系化語言。
將每個複本filename。地區設定.vsct,其中地區設定是特定文化特性名稱。 如需文化特性名稱值的清單,請參閱由 Microsoft 指派的地區設定識別碼。
這些filename。地區設定.vsct 檔會包含當地語系化的功能表文字,為您的封裝。
開啟每一個filename。地區設定.vsct 檔當地語系化文字。
修改ButtonText值為適合特定語言的元素。
如果您將會提供當地語系化的圖示,修改點陣圖值以指向目標檔案。
下列範例會顯示英文和西班牙文的按鈕文字命令以開啟系列樹狀結構總管工具視窗。
[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>
將其他文字資源當地語系化
資源 (.resx) 檔案中定義的文字命令名稱以外的資源。
重新命名 VSPackage.en US.resx VSPackage.resx。
每個當地語系化語言的 VSPackage.en US.resx 檔案的副本。
將每個複本 VSPackage。地區設定.resx,其中地區設定是特定文化特性名稱。
重新命名 Resources.en US.resx Resources.resx。
每個當地語系化語言的 Resources.en US.resx 檔案的副本。
將每個複本的資源。地區設定.resx,其中地區設定是特定文化特性名稱。
開啟每個.resx 檔修改成適合特定語言和文化特性的字串值。 下列範例會顯示工具視窗的標題列的當地語系化的資源定義。
[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>
併入專案中的當地語系化的資源
您必須修改 assemblyinfo.cs 檔案和專案檔,以將當地語系化的資源。
從屬性節點方案總管] 中,在編輯器中開啟 assemblyinfo.cs 或 assemblyinfo.vb。
新增下列項目。
[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
英文 (美國) 設定為預設語言。
卸載專案。
在編輯器中開啟專案檔案。
找出
ItemGroup
包含項目EmbeddedResource
項目。在
EmbeddedResource
VSPackage.en US.resx,會呼叫的項目取代ManifestResourceName
具有項目LogicalName
元素,設定為VSPackage.en-US.Resources
、,如下所示。<EmbeddedResource Include="VSPackage.en-US.resx"> <MergeWithCTO>true</MergeWithCTO> <LogicalName>VSPackage.en-US.Resources</LogicalName> </EmbeddedResource>
對於每個當地語系化的語言,複製
EmbeddedResource
VsPackage.en 美式和集合的項目包含屬性和LogicalName複製的目標地區設定,如下列範例所示的項目。每個當地語系化
VSCTCompile
項目,加入ResourceName
指向項目的Menus.ctmenu
,如下列範例所示。<ItemGroup> <VSCTCompile Include="LocalizedPackage.es-ES.vsct"> <ResourceName>Menus.ctmenu</ResourceName> </VSCTCompile> </ItemGroup>
儲存專案檔,並重新載入專案。
建置專案。
這會建立主要組件,並針對每種語言的資源組件。 當地語系化的部署程序的資訊,請參閱當地語系化 VSIX 套件