可以說,我已經創建了一個Windows窗體應用程序,在C#編寫(或VB),使用Visual Studio(2012年)。如何確保在Visual Studio中完全覆蓋本地化資源文件?
我的應用程序的對象是一個講英語的觀衆,以及在一個講德語。
因此,我創建了兩個資源文件(的.resx)包含我即使用各種MessageBox
ES的字符串。例如:MessageBox.Show(rm.GetString("file_not_found"), MessageBoxButtons.OK, MessageBoxIcon.Error);
如何確保字符串資源"file_not_found"
包含在我的.resx文件中?我如何確保全面覆蓋?
的Visual Studio不提供在編譯時進行檢查,使確保我的資源字符串都包含在資源文件!
我不希望我的應用程序崩潰時,它無法找到在運行時的資源串...
編輯: 我使用我的訪問資源: internal static ResourceManager rm = new ResourceManager("myNamespace.Resources.lang", System.Reflection.Assembly.GetExecutingAssembly());
而且我必須手動創建了兩個(非自動生成的)資源文件,lang.de_DE.resx
和lang.en_GB.resx
...
+1。爲RESX自動生成的CS文件是實現編譯時驗證的最簡單方法。如果由於某種原因,相應的Resource1.designer.cs文件不是自動生成的,您可能需要調整解決方案中用於特定resx文件的工具。 –
嗨安德魯,所以不需要像這樣的東西:內部靜態ResourceManager rm =新的ResourceManager(「myNamespace.Resources.lang」,System.Reflection.Assembly.GetExecutingAssembly()); ?? – Sebastian
@Sebastian我只使用過上面的靜態/強類型方法。也許有人更有資格解釋ResourceManager的使用場景? –