如何使用资源文件更改为不同的全球化?

问题描述 投票:0回答:1

如何从正确的resx文件中提取本地化以提取值?

我有两个文件,一个用于英语,另一个用于捷克语:

enter image description here

要快速预览其内容:

enter image description here

我试图改变文化/本地化。我相信文化正在形成;但是,它仍然没有使用cs-CZ文件:

                                        Dim value = InnerNode.InnerText
                    Dim cultures() As String = {"cs-CZ"}
                    Dim rnd As New Random()
                    Dim cultureNdx As Integer = rnd.Next(0, cultures.Length)
                    Dim originalCulture As CultureInfo = Thread.CurrentThread.CurrentCulture

                    Dim newCulture As New CultureInfo(cultures(cultureNdx))
                        Thread.CurrentThread.CurrentCulture = newCulture
                    Thread.CurrentThread.CurrentUICulture = newCulture

                    Dim currentLanguageValue = My.Resources.GlobalStrings.ResourceManager.GetString(value)

我们知道目前的文化确实是cs-CZ:

enter image description here

我们看到currentLanguageValue的价值应该是Mandl

enter image description here

但它是Almond - 这意味着它根本没有识别GlobalStrings.cs-CZ.resx文件。

我做错了什么,如何让它识别捷克资源文件?

.net vb.net localization visual-studio-2017 globalization
1个回答
0
投票

尝试在应用程序的入口点设置CultureInfo(Sub Main或主Form的构造函数,或Application.Startup事件)。我担心在运行时在其他任何地方设置CultureInfo对加载正确的资源没有任何影响。

© www.soinside.com 2019 - 2024. All rights reserved.