Como: localizar os comandos de Menu
Você pode fornecer o texto localizado para o menu e barra de ferramentas, comandos criando arquivos de .vsct localizadas e localizados os arquivos. resx para seu VSPackage e, em seguida, atualizar os arquivos de projeto incorporar as alterações.
Para obter informações sobre como localizar a experiência de instalação, consulte Localizando pacotes VSIX.
Localização de nomes de comando
No VSPackages, os comandos de menu e botões da barra de ferramentas são definidos no arquivo .vsct.
Para criar comandos de menu traduzido
Em Solution Explorer, altere o nome do arquivo .vsct do nome do arquivo.vsct para nome do arquivo.en-US.vsct.
Faça uma cópia de nome do arquivo.en-US.vsct para cada idioma de localizadas.
O nome de cada cópia nome do arquivo. Localidade.vsct, onde localidade é um nome de cultura específica. Para obter uma lista dos valores de nome de cultura, consulte Referência da API de suporte de idiomas nacionais (NLS) no site do MSDN.
Estes nome do arquivo. Localidade.vsct arquivos irá conter o texto de menu traduzido para o seu pacote.
Abra cada nome do arquivo. Localidade.vsct o arquivo para localizar o texto.
Modificar o ButtonText elemento valores conforme apropriado para o idioma específico.
Se você irá fornecer ícones localizadas, modifique o Bitmap valores para apontar para os arquivos de destino.
O exemplo a seguir mostra o texto do botão inglês e espanhol para um comando abrir uma janela de ferramenta Explorer árvore genealógica.
[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 Arboles de Familias</ButtonText> </Strings> </Button>
Localizando outros recursos de texto
Recursos de texto diferente de nomes de comando são definidos nos arquivos de recurso (. resx).
Para criar arquivos de recurso localizado
Renomeie VSPackage.resx para VSPackage.en-US.
Faça uma cópia do arquivo VSPackage.en-US para cada idioma localizado.
O nome de cada cópia VSPackage. Localidade. resx, onde localidade é um nome de cultura específica.
Renomeie resx para Resources.en-US.
Faça uma cópia do arquivo Resources.en-US para cada idioma localizado.
O nome de cada cópia de recursos. Localidade. resx, onde localidade é um nome de cultura específica.
Abra cada arquivo. resx para modificar os valores de seqüência de caracteres de acordo com a cultura e idioma específico. O exemplo a seguir mostra a definição de recurso localizado para a barra de título de uma janela de ferramenta.
[Resources.en-US]
<data name="ToolWindowTitle" xml:space="preserve"> <value>Family Tree Explorer</value> </data>
<data name="ToolWindowTitle" xml:space="preserve"> <value>Family Tree Explorer</value> </data>
[Resources.es-ES.resx]
<data name="ToolWindowTitle" xml:space="preserve"> <value>Explorador de los Arboles de Familia</value> </data>
<data name="ToolWindowTitle" xml:space="preserve"> <value>Explorador de los Arboles de Familia</value> </data>
A incorporação de recursos localizados no projeto
Você deve modificar o arquivo AssemblyInfo. cs e o arquivo de projeto para incorporar os recursos localizados.
Para incorporar os recursos localizados no projeto
Do Propriedades nó na Solution Explorer, abra AssemblyInfo. cs ou AssemblyInfo. vb no editor.
Adicione a seguinte entrada.
[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
Isso define o inglês como idioma padrão.
Descarrega o projeto.
Abra o arquivo de projeto no editor.
Localize o ItemGroup o elemento que contém EmbeddedResource elementos.
No EmbeddedResource elemento que chama o VSPackage.en-US, substituir o ManifestResourceName elemento com um LogicalName elemento, definido como VSPackage.en-US. Resources, da seguinte forma.
<EmbeddedResource Include="VSPackage.en-US.resx"> <MergeWithCTO>true</MergeWithCTO> <LogicalName>VSPackage.en-US.Resources</LogicalName> </EmbeddedResource>
Para cada idioma localizado, copie o EmbeddedResource elemento para VsPackage.en-US e o conjunto de Include atributo e LogicalName elemento da cópia para a localidade de destino, conforme mostrado no exemplo a seguir.
A cada localizadas VSCTCompile elemento, adicione um ResourceName elemento que aponta para Menus.ctmenu, conforme mostrado no exemplo a seguir.
<ItemGroup> <VSCTCompile Include="LocalizedPackage.es-ES.vsct"> <ResourceName>Menus.ctmenu</ResourceName> </VSCTCompile> </ItemGroup>
Salve o arquivo de projeto e recarregar o projeto.
Crie o projeto.
Isso cria um assembly principal e módulos de recursos para cada idioma. Para informações sobre o processo de implantação de localização, consulteLocalizando pacotes VSIX
Consulte também
Tarefas
Como: criar e manipular comandos em VSPackages (C#)