我正在使用VS2008开发WinForms 2.0应用程序。我已阅读有关如何通过在设计器等中将 Localized 属性设置为 true 来在 Visual Studio 中本地化我的应用程序。
我想询问一下您的体验,当我将应用程序翻译成多种语言,然后更改用户界面时,效果如何。例如,我添加一些按钮,从表单中删除一些其他控件等。我知道这不是最佳实践,但有时我必须在开发过程中本地化应用程序,然后继续添加新功能。这一切是否有效,或者我会以一些损坏的资源文件等结束吗?
我问这个问题的原因是我以前使用过 Borland C++ Builder,当我在一个已经本地化的应用程序中更改 UI 时,它遇到了很大的问题。
最佳答案
当您向表单添加控件并设置属性时,它们将被添加到表单的文化中立资源中。
当您加载表单时,.NET 将尝试查找用户特定文化的资源(例如挪威博克马尔语的 nb-NO)。如果没有找到资源,.NET 将尝试中性文化(在本例中为“否”),如果没有找到资源,它将加载中性资源。
因此,即使您添加新控件但不为其添加特定于文化的资源,您的应用程序也可以运行,但使用的是英文(?)文本而不是翻译文本。
关于.net - WinForms 应用程序的本地化和后来的 UI 更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/438920/