다음을 통해 공유


방법: ResourceDictionary를 사용하여 지역화 가능한 문자열 리소스 관리

이 예제에서는 ResourceDictionary를 사용하여 Windows Presentation Foundation (WPF) 응용 프로그램의 지역화 가능한 문자열 리소스를 패키지하는 방법을 보여 줍니다.

ResourceDictionary를 사용하여 지역화 가능한 문자열 리소스를 관리하려면

  1. 지역화할 문자열이 포함된 ResourceDictionary를 만듭니다. 다음 코드에서는 이러한 예제를 보여 줍니다.

    <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>
    

    이 코드는 mscorlib.dll의 System 네임스페이스에서 String 형식의 문자열 리소스 localizedMessage를 정의합니다.

  2. 다음 코드를 사용하여 ResourceDictionary를 응용 프로그램에 추가합니다.

    <Application.Resources>
      <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
          <ResourceDictionary Source="StringResources.xaml" />
        </ResourceDictionary.MergedDictionaries>
      </ResourceDictionary>
    </Application.Resources>
    
  3. 다음과 같은 Extensible Application Markup Language (XAML)을 사용하여 태그의 문자열 리소스를 사용합니다.

    <!-- Declarative use of string resource from StringResources.xaml resource dictionary -->
    <TextBox DockPanel.Dock="Top" Text="{StaticResource localizedMessage}" />
    
  4. 다음과 같은 코드를 사용하여 코드 숨김 코드의 문자열 리소스를 사용합니다.

    ' Programmatic use of string resource from StringResources.xaml resource dictionary
    Dim localizedMessage As String = CStr(Application.Current.FindResource("localizedMessage"))
    MessageBox.Show(localizedMessage)
    
    // Programmatic use of string resource from StringResources.xaml resource dictionary
    string localizedMessage = (string)Application.Current.FindResource("localizedMessage");
    MessageBox.Show(localizedMessage);
    
  5. 응용 프로그램을 지역화합니다. 자세한 내용은 방법: 응용 프로그램 지역화를 참조하십시오.