Partilhar via


Como: Use a ResourceDictionary to Manage Localizable String Resources

Este exemplo mostra como usar um ResourceDictionary para empacotar recursos string localizáveis para aplicativos Windows Presentation Foundation (WPF).

Usar um ResourceDictionary para gerenciar recursos string localizáveis

  1. Crie um ResourceDictionary que contém as strings que você deseja localizar. O código a seguir mostra um exemplo.

    <ResourceDictionary 
      xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
      xmlns:system="clr-namespace:System;assembly=mscorlib">
    
      <!-- String resource that can be localized -->
      <system:String x:Key="localizedMessage">en-US Message</system:String>
    
    </ResourceDictionary>
    

    Esse código define um recurso string, localizedMessage, do tipo String, do espaço de nomes System em mscorlib.dll.

  2. Adicione o ResourceDictionary ao seu aplicativo, usando o código a seguir.

    <Application.Resources>
      <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
          <ResourceDictionary Source="StringResources.xaml" />
        </ResourceDictionary.MergedDictionaries>
      </ResourceDictionary>
    </Application.Resources>
    
  3. Use o recurso string a partir de marcação, usando Extensible Application Markup Language (XAML) como a seguir.

    <!-- Declarative use of string resource from StringResources.xaml resource dictionary -->
    <TextBox DockPanel.Dock="Top" Text="{StaticResource localizedMessage}" />
    
  4. Use o recurso string a partir de code-behind, usando código como o seguinte.

    // Programmatic use of string resource from StringResources.xaml resource dictionary
    string localizedMessage = (string)Application.Current.FindResource("localizedMessage");
    MessageBox.Show(localizedMessage);
    
  5. Localize o aplicativo. Para obter mais informações, consulte Como: Localizar um Aplicativo.

Para o código-fonte completo para este exemplo, consulte Implementando recursos de Cadeia de Caracteres traduzível no exemplo XAML.