逐步解說:載入附屬組件的資源
更新:2007 年 11 月
本逐步解說示範如何使用 Windows Presentation Foundation (WPF) Designer for Visual Studio,從附屬組件 (Assembly) 載入資源字串。這項作業有助於 WPF 應用程式的當地語系化。
在這個逐步解說中,您會執行下列工作:
建立專案。
啟用附屬組件。
建立並存取資源字串。
完成這些工作之後,您就會有一個簡單的應用程式,可用來從附屬組件擷取字串。
![]() |
---|
您所看到的對話方塊與功能表命令,可能會因您目前使用的設定或版本,而與 [說明] 中描述的不同。若要變更設定,請從 [工具] 功能表中選擇 [匯入和匯出設定]。如需詳細資訊,請參閱 Visual Studio 設定。 |
必要條件
您需要下列元件才能完成此逐步解說:
- Visual Studio 2008
建立專案
第一個步驟是建立應用程式的專案。
若要建立專案
在 Visual Basic 或 Visual C# 中,建立名為 ResourceTest 的新 WPF 應用程式專案。如需詳細資訊,請參閱 HOW TO:建立新的 WPF 應用程式專案。
Window1.xaml 隨即在 WPF 設計工具中開啟。
從工具箱將 Button 控制項拖曳到設計介面。
按兩下按鈕,建立按鈕控制項的 Click 事件處理常式。
啟用附屬組件
您可對 AssemblyInfo 和專案檔進行小幅變更,以便啟用附屬組件。
若要啟用附屬組件
在 [程式碼編輯器] 中開啟 AssemblyInfo.cs 或 AssemblyInfo.vb。您可能必須按一下 [顯示所有檔案],才能在 [方案總管] 中看到這個檔案。
取消註解下一行。
//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
'<Assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)>
儲存方案。
在 [方案總管] 中,以滑鼠右鍵按一下 ResourceTest 專案,並選取 [卸載專案]。
Visual Studio 隨即卸載 ResourceTest 專案。
在 [方案總管] 中,以滑鼠右鍵按一下 ResourceTest 專案,並選取 [編輯 ResourceTest.csproj] 或 [編輯 ResourceTest.vbproj]。
專案檔隨即在 [XML 編輯器] 中開啟。
將下列 XML 插入與其他 <PropertyGroup> 項目相同的層級中。
<PropertyGroup> <UICulture>en-US</UICulture> </PropertyGroup>
儲存並關閉檔案。
在 [方案總管] 中,以滑鼠右鍵按一下 ResourceTest 專案,並選取 [重新載入專案]。
在 [方案總管] 中,將預設 RESX 檔案的名稱從 Resources.resx. 變更為 Resources.en-US.resx。
在 [屬性] 視窗中,清除資源檔的 [自訂工具] 值。
在附屬組件中建立資源字串
現在,請在資源檔中建立字串。
若畏在附屬組件中建立資源字串
在 [方案總管] 中,按兩下 Resources.en-US.resx。
Resources.en-US.resx 隨即在 [資源設計工具] 中開啟。
將預設字串的名稱從 String1 變更為 helloWorldString。
將 helloWorldString 的值變更為 Hello world。
儲存並關閉 [資源編輯器]。
存取資源字串
請使用 ResourceManager 類別 (Class) 存取附屬組件中的字串。
若要存取資源字串
在 [程式碼編輯器] 中開啟 Window1.xaml.cs 或 Window1.xaml.vb。
將下列程式碼插入 Window1.xaml.cs 或 window1.xaml.vb 的頂端。
using System.Reflection; using System.Resources;
Imports System.Reflection Imports System.Resources
將下列程式碼插入至 button1_Click 事件處理常式中。
ResourceManager rm = new ResourceManager( "ResourceTest.Properties.Resources", Assembly.GetExecutingAssembly()); MessageBox.Show(rm.GetString("helloWorldString"));
Dim rm As New ResourceManager( _ "ResourceTest.Resources", _ Assembly.GetExecutingAssembly()) MessageBox.Show(rm.GetString("helloWorldString"))
按 F5 建置 (Build) 並執行應用程式。
按一下按鈕,查看從附屬資源載入的字串值。
開啟 Debug/en-US 資料夾,查看附屬組件 (名稱為 ResourceTest.resources.dll)。