Início rápido: usando recursos de cadeia de caracteres
Idioma: HTML | XAML

Início rápido: usando recursos de cadeia de caracteres (XAML)

[ Este artigo destina-se aos desenvolvedores do Windows 8.x e do Windows Phone 8.x que escrevem aplicativos do Windows Runtime. Se você estiver desenvolvendo para o Windows 10, consulte documentação mais recente]

Coloque recursos de cadeias de caracteres em arquivos de recursos e faça referência a essas cadeias de caracteres do seu código ou marcação.

Instruções

  1. Coloque as cadeias de caracteres em arquivos de recurso em vez de colocá-las diretamente no código ou na marcação.
    1. Abra package.appxmanifest no Visual Studio, vá para a guia Aplicativo e defina seu idioma padrão como "pt-br". Se esse for um aplicativo universal, faça isso para cada package.appxmanifest em sua solução.
      Observação  Isso especifica o idioma padrão do projeto. Os recursos de idioma padrão serão usados se o idioma de preferência do usuário ou os idiomas de exibição não corresponderem aos recursos de idioma fornecidos no aplicativo.
       
    2. Crie um arquivo de recursos em uma subpasta específica para um idioma. Para o arquivo de recursos, recomendamos que você use o nome de arquivo padrão. Os aplicativos podem particionar seus recursos em outros arquivos, mas você deve ter cuidado de fazer a referência a eles corretamente (veja Como carregar recursos de cadeias de caracteres).

      Hh965326.wedge(pt-br,WIN.10).gifC# e VB

      1. No Gerenciador de Soluções, clique com o botão direito no projeto (o projeto compartilhado se esse foro um aplicativo universal) e selecione Adicionar > Nova Pasta.
      2. Dê um nome para a nova pasta "Cadeias".
      3. Crie uma subpasta e um arquivo de recursos para inglês (Estados Unidos).
        1. Clique com o botão direito na pasta de cadeias de caracteres e adicione uma nova pasta abaixo dela. Dê o nome "en-US". O arquivo de recursos é colocado em uma pasta que foi nomeada para a marca de idioma BCP-47. Veja Como nomear recursos usando qualificadores para saber mais sobre o qualificador de idioma e uma lista de marcas de idioma comuns.
        2. Clique om o botão direito na pasta en-US e selecione Adicionar > Novo Item….
        3. Selecione "Arquivo de recursos (.resw)".
        4. Clique em Adicionar. Isso adiciona um arquivo de recursos com o nome padrão "Resources.resw".
        5. Se você tiver arquivos .resx apenas com recursos de sequência de caracteres de projetos .NET, selecione Adicionar > Item existente…, adicione o arquivo .resx e renomeie-o para .resw.

      Hh965326.wedge(pt-br,WIN.10).gifC++

      1. Clique com o botão direito no item do projeto no Gerenciador de Soluções e selecione Adicionar > Novo Item….
      2. Selecione o Arquivo de Recursos (.resw) e na caixa de texto Localização, especifique <ProjectRootPath>\Strings\en-US para criar uma subpasta para conter as cadeias de caracteres de Inglês US.
  2. Abra o arquivo e use o editor para adicionar dois novos recursos:

    Strings/pt-BR/Erros.resw

    Editor Adicionar recursos

    Neste exemplo, "Greeting" e "Farewell" são as chaves usadas para identificar as cadeias de caracteres de recursos. "Greeting.Text" e "Greeting.Width" identificam propriedades específicas com suporte nos controles de referência. Os comentários são um bom lugar para fornecer qualquer instrução especial para tradutores que localizarem as cadeias de caracteres para outros idiomas.

    Observação sobre identificadores de propriedades:  

    O nome do recurso só pode ser qualificado com identificadores de propriedades com suporte em todos os controles que referenciam o recurso. Se uma propriedade especificada no arquivo de recurso não puder ser atribuída a um controle de referência, ocorrerá uma exceção de tempo de execução.

    O método GetString não pode recuperar recursos qualificados com um identificador de propriedade. Neste exemplo, GetString("Farewell") retorna "Goodbye", enquanto GetString("Greeting.Text") e GetString("Greeting") falham.

  3. Associe controles a recursos.

    Você precisa associar cada controle que necessita de texto localizado ao arquivo .resw. Para fazer isso, use o atributo x:Uid dos elementos XAML da seguinte forma:

    
    <TextBlock x:Uid="Greeting" Text="" />
    
    

    Para o nome do recurso, você dá o valor do atributo Uid, e também especifica qual propriedade obterá a cadeia de caracteres traduzida (neste caso a propriedade Text). Você poderá especificar outra propriedade ou outros valores para culturas diferentes, como Greeting.Width, mas seja cauteloso com essas propriedades relacionadas ao layout. Lembre-se, você deve se esforçar para permitir que os controles sejam dispostos dinamicamente, com base na tela do dispositivo.

    Observe que as propriedades anexadas são tratadas de maneira diferente em arquivos resw, como AutomationPeer.Name. Você precisa escrever explicitamente o namespace da seguinte forma:

    
    MediumButton.[using:Windows.UI.Xaml.Automation]AutomationProperties.Name
    
    
  4. Adicione identificadores de recurso ao código e à marcação.

    No seu código, você pode fazer referência dinamicamente às cadeias de caracteres:

    
    
    var loader = new Windows.ApplicationModel.Resources.ResourceLoader();
    var str = loader.GetString("Farewell");
    
    
    

Para mais detalhes sobre como adicionar idiomas adicionais e localização, veja Guia de início rápido: Traduzindo recursos de interface do usuário.

Tópicos relacionados

Como nomear recursos usando qualificadores
Como carregar recursos de cadeias de caracteres
Guia de início rápido: Traduzindo recursos da interface do usuário
Mapa de aplicativos do Tempo de Execução do Windows em C# ou Visual Basic
A tag do idioma BCP-47

 

 

Mostrar:
© 2017 Microsoft