问题标签 [currentuiculture]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
767 浏览

c# - 当前UICulture MVC 变化

我有一个用 mvc3 构建的网站。我想要一张西班牙国旗的图像,然后在点击网站时将语言更改为西班牙语。我还没有开发该网站,但我注意到它正在使用 CurrentUICulture。我猜我可以触发一个函数,然后将文化存储在会话变量中并将其设置为文化?

0 投票
1 回答
314 浏览

c# - 创建线程时如何修复 CurrentUICulture

我正在使用CurrentUICulture本地化。这工作得很好,直到在不同的线程中查询 UI 文化。所以我的问题是如何修复CurrentUICulture它,以便在我创建新线程时也能修复它。

目前我Thread.CurrentThread.CurrentUICulture在应用程序启动的第一行设置。

谢谢

0 投票
3 回答
2273 浏览

c# - WPF 设计时应用文化

我们正在开发一个本地化的英语/阿拉伯语应用程序,我需要System.Threading.Thread.CurrentThread.CurrentUiCulture在设计时将两种文化中的任何一种设置为与运行时设置的值不同的值。

我怎样才能做到这一点?

提前致谢。

0 投票
3 回答
3351 浏览

android - 错误 MSB4185:“System.Globalization.CultureInfo”尚未启用执行

当尝试使用 Mono for Android 构建 MonoDevelop 时,我收到此错误。根据调试它不在我的代码中,所以我一无所知。任何想法?

错误 MSB4185:类型“System.Globalization.CultureInfo”的函数“CurrentUICulture”尚未启用执行。(MSB4185)

0 投票
1 回答
557 浏览

c# - 如何防止机器上安装的语言发生变化

我需要使用 alt + shift 键禁用文本框的语言更改。我有改变 currentCulture 的功能,但即使我在 keydown 或 keyup 事件上设置它,按 Alt + Shift 总是切换到下一种语言。

0 投票
3 回答
17168 浏览

c# - 为国家、语言组合创建自定义 CultureInfo

我正在开发一个 .net 4.5 应用程序,该应用程序需要多语言支持多文化等。

以下是国家/语言的示例列表

  • 俄罗斯 / 俄语
  • 比利时 / 法国
  • 比利时/荷兰

对于上述所有内容,可以根据上述文化名称创建一个 CultureInfo 对象

  • RU-RU
  • FR-BE
  • nl-BE

当用户进入站点时,我将 Thread.CurrentThread.CurrentCulture 和 Thread.CurrentThread.CurrentUICulture 设置为使用上述名称创建的文化,例如。

以上所有名称都是有效的文化名称。

不,但是我需要添加另一个文化名称,即俄罗斯的英语语言。但问题是代码 en-RU 无效,所以当我创建时,new CultureInfo("en-RU", false)我得到一个 CultureNotFoundException,因为 en-RU 无效。

有了这种文化,我想要俄罗斯的数字、日期等格式,但我希望网站上的语言是英语。是否可以根据国家(俄罗斯)的行为为无效的文化名称创建自定义 CultureInfo 对象?

0 投票
1 回答
2098 浏览

windows-runtime - 在 WinRT 中更改 UI 文化

是否可以即时更改 WinRT 中的 UI 文化?我找到了ApplicationLanguages.PrimaryLanguageOverride = "en";,但这仅在显示应用程序 UI 之前有效,之后无效(例如,我想通过设置更改 UI 语言)。

0 投票
2 回答
9751 浏览

c# - CurrentThread.CurrentUICulture 设置正确,但始终获取 en-US

我正在开发一个有两种语言的多语言网站,从阿拉伯语和英语开始

我已在 IE 和 FireFox 中将语言设置为阿拉伯语(ar-ae),但它总是给我英文版本,我无法解决此问题

网站结构

问题是,当我使用 URL 时,如果选择阿拉伯语作为语言http://localhost:49831/site/Defualt.aspx,它可以正常工作并将我重定向到阿拉伯语版本。ar/Default.aspx

但是当使用 URL 时,http://localhost:49831/site/ 它总是将我重定向到英文版本 en/Default.aspx

我不确定我做错了什么。

我只使用 Default.aspx 来检测默认浏览器语言,然后相应地重定向

Default.aspx.cs 文件的代码

我怎样才能最好地定义此代码以使其正常工作。在 Global.asx 文件中定义 CurrentUICulture 是否更好

0 投票
2 回答
4455 浏览

wpf - CurrentUICulture 忽略区域和语言设置

Windows 7 区域和语言对话框中的各种设置为 CurrentCulture 对象的属性提供值。但是,WPF 控件似乎改用 CurrentUICulture,导致完全无法尊重用户的偏好。

例如,在我的工作站上,WPF 控件似乎使用的是 en-US 的 CurrentUICulture,导致它们以美国格式 M/d/yyyy 显示日期,而不是在区域和语言对话框中指定的澳大利亚格式。

在数据绑定中明确指定 en-AU 区域性会导致相关控件使用默认的澳大利亚格式,但它会继续忽略用户指定的格式。这很奇怪;进入应用程序我验证了 DateTimeFormatInfo.CurrentInfo == Thread.CurrentThread.CurrentCulture.DateTimeFormat (相同的对象)和 DateTimeFormatInfo.CurrentInfo.ShortDatePattern == "yyyy-MM-dd" (我设置的一个值,以便我可以确定用户偏好或正在选择默认值)。一切都如预期的那样,所以从表面上看,最大的问题是如何说服 WPF 控件和数据绑定使用 CurrentCulture 而不是 CurrentUICulture。

我们应该如何让 WPF 应用程序尊重区域和语言设置?


基于 Sphinxx 的回答,我覆盖了 Binding 类的两个构造函数,以提供与标准标记的更完整兼容性。


进一步的实验表明,您可以使用 x:Static 在标记中引用 System.Globalization.CultureInfo.CurrentCulture。这在运行时是完全成功的,但在设计时是灾难,因为绑定编辑器不断删除它。更好的解决方案是一个帮助类来遍历窗口的 DOM 并修复它找到的每个 Binding 的 ConverterCulture。

0 投票
1 回答
3034 浏览

asp.net-mvc - 文化改变后验证错误消息不会改变

我目前正在开发一个需要支持 2 种语言的MVC4应用程序。我将DataAnnotations与以下形式的资源一起使用:

我创建了一个全局操作过滤器,它读取语言 cookie(如果存在),并相应地设置当前文化uiculture。如果 cookie 不存在,它会创建具有当前文化的 cookie。这是OnActionExecuting在过滤器中的样子:

一切都按预期工作,除非发生这种情况:

  1. 从 HTML 表单(假设家里有一个花哨的注册表单,没有客户端验证,所以它的花哨布局上没有任何东西被破坏)发布到 Home 控制器中的 Signup 操作。
  2. 如果发布的数据有错误,则会以与当前文化匹配的语言显示。(好的和预期的)。
  3. 通过使用我在客户端中启用的下拉菜单更改语言,该下拉菜单实际上回发到服务器。(我还没有在这里实现PRG模式,所以我看到了关于重新发布相同数据的警告)。
  4. 该视图是使用我选择的语言呈现的,但是验证消息仍然使用它们最初的语言。

如果我调试处理语言切换的操作过滤器,我可以看到 ModelState 以原始语言保存错误,所以我的猜测是验证只在服务器中发生一次。我想我需要清理 ModelState 并强制验证,但我想知道这是否是一个 hack,是否有更好的方法来处理这个问题。

谢谢!R。