标签: culture

本地化DayOfWeek的方式不那么难看?

using System;

namespace Server.Custom.Extensions
{
    public static class FriendlyExtensions
    {
        public static string Friendly(this DayOfWeek day)
        {
            if (day == DateTime.Now.DayOfWeek)
                return "Hoy";

            int dayOfWeek = (int)DateTime.Now.DayOfWeek;
            int dayOfEvent = (int)day;

            if (dayOfWeek + 1 == dayOfEvent || (dayOfWeek == 6 && dayOfEvent == 0))
                return "Mañana";

            switch (day)
            {
                default:
                case DayOfWeek.Monday: return "Lunes";
                case DayOfWeek.Tuesday: return "Martes";
                case DayOfWeek.Wednesday: return "Miercoles";
                case DayOfWeek.Thursday: return "Jueves";
                case DayOfWeek.Friday: return "Viernes";
                case DayOfWeek.Saturday: return "Sabado";
                case DayOfWeek.Sunday: return "Domingo";
            } …
Run Code Online (Sandbox Code Playgroud)

c# culture localization

4
推荐指数
1
解决办法
2509
查看次数

设置单个 WPF 用户控件的文化

我编写了一个与“en-US”以外的文化不兼容的用户控件。此外,不可避免地将此用户控件嵌入具有非“en-US”文化的应用程序中。那么是否可以强制应用程序不更改此用户控件的文化?
最好在用户控件中有一个解决方案。
我已经阅读了这个线程: Localizing a WinForms Application with Embedded WPF User Controls 但我不能使用WpfLocalization.LocalizationScope.SetCulture
这个函数真的存在吗?

还有一个Localizable标签可以设置为False但它仅用于.csproj文件中的资源定义:http : //msdn.microsoft.com/en-us/library/ms788718.aspx

那么有没有人对这个问题有任何想法?


更多说明:
假设我们有一个具有文化 X 的应用程序和一个与文化“en-US”兼容的用户控件。这个用户控件有一个 DateTime 类型的依赖属性,它通过这种方式获取它的值:

<my:uc1 x:Name="UserControl1" Date="4234/12/22" />
Run Code Online (Sandbox Code Playgroud)

当应用程序文化为“en-US”时,用户控件将获得“4234/12/22”,但当应用程序文化为其他内容时,它会自动将“4234/12/22”转换为应用程序自己的日历并提供“0744/04” /08"到用户控件并破坏用户控件背后的每个逻辑!这完全是一场灾难。

我想通过将用户控件的区域性设置为“en-US”来防止这种转换。

希望我已经充分说明了情况。

wpf culture user-controls

4
推荐指数
1
解决办法
3376
查看次数

如何改变剑道网格的文化?

我想将Kendo Grid文化更改为nl-NL。。我在互联网上进行了研究,他们建议我只需要包含该文化的dll。。我已经做到了,并且我也引用了相同的内容。我也使用Kendo.Culture(“ nl-NL”); 还是行不通

culture kendo-ui kendo-grid kendo-asp.net-mvc

4
推荐指数
1
解决办法
2万
查看次数

如何在 C# 中将两个字母的 ISO-3166 国家/地区代码映射到文化

我需要根据两个字母的 ISO-3166 国家/地区代码本地化我的 C# DateTime 对象

https://en.wikipedia.org/wiki/ISO_3166-2

有办法做到吗?

我只能使用 5 个字符的国家/地区表示(en-US、nl-NL 等..)来应用给定的文化

System.Globalization.CultureInfo cultureinfo =
        new System.Globalization.CultureInfo("nl-NL");
DateTime dt = DateTime.Parse(date, cultureinfo);
Run Code Online (Sandbox Code Playgroud)

即使是满射映射也可以(即多个国家/地区代码映射到单一 C# 文化)

.net c# culture timezone datetime

4
推荐指数
1
解决办法
2万
查看次数

文化 缩写月份名称有时以句点结尾

对于 a CultureInfo,调用DateTimeFormat.AbbreviatedMonthNames返回一个数组,其中每个月以 a 结尾,.例如['jan.',... 'dis.']

这种情况不会发生在构建服务器上,也不会发生在所有开发人员计算机上,只是部分计算机上会发生。CurrentCulture和机器位置/语言的设置似乎没有相关性。

选择这一点的测试是针对西班牙文化的,包括明确地CultureInfo为西班牙语创建一个。所以我本以为这些信息是硬编码在某个地方并且只是被读出,据我所知是这样。正在读取CultureData.AbbreviatedMonthNames(calendarId)

更新:经过进一步调查,似乎如果启动时的当前文化是那么en-GB就没有时期。如果有en-US那就有。显式设置CurrentCulture没有任何效果,只是在启动时有所不同。

c# culture cultureinfo

4
推荐指数
1
解决办法
1184
查看次数

无法更改 Visual Studio 2017 中程序集的默认语言

我的应用程序支持三种语言:en、es 和 fr。当我构建我的(干净的,从模板)UWP 应用程序时,我收到消息:

warning PRI257: 0xdef00522 - Resources found for language(s) 'en,es,fr' but no resources found for default language(s): 'en-US'. Change the default language or qualify resources with the default language.
Run Code Online (Sandbox Code Playgroud)

然后我进入清单并将默认语言从 en-US 更改为 en-GB,当我重新编译时,我得到:

warning PRI257: 0xdef00522 - Resources found for language(s) 'en,es,fr' but no resources found for default language(s): 'en-GB,en-US'. Change the default language or qualify resources with the default language.
Run Code Online (Sandbox Code Playgroud)

是什么赋予了?如何替换 UWP 应用程序中的默认语言,以便它不会尝试查找 en-US 资源?

culture visual-studio uwp

4
推荐指数
1
解决办法
2492
查看次数

链接到显示所有文化的CultureInfo的表格

我正在试图找到一张表格,显示文化的所有日期时间格式

我一直在谷歌上搜索疯狂,我想要的只是那张桌子!ARG

en-CA = DD/MM/YYYY 0.00 en-FR = MM/DD/YYYY 0,00

我正在寻找MSDN或维基百科的链接 - 我知道我以前见过这个

.net culture localization

3
推荐指数
1
解决办法
1600
查看次数

我应该使用ISO 3166国家代码(美国)还是文化代码(en-US)?

ISO 3166列出了2个字符的国家/地区代码,例如美国,英国,法国.

我使用的购物车既有这些代码,也有en-USen-UK等文化代码.

对于一个单独的项目,我认为较长的代码更有用,因为它至少告诉我该国使用的语言.但我似乎无法找到准确的清单.

我应该使用这些"文化代码"来跟踪国家还是仅仅坚持使用2个字符的ISO 3166名称?什么可能是使用任何一种?

我不确定为什么锁定英语的购物车甚至会关心en-US而不仅仅是美国.任何见解?

编辑: 我在哪里可以获得文化代码列表?这是ISO标准吗?假设文化代码的国家部分是ISO 3166国家代码是否正确?

culture shopping-cart iso internationalization

3
推荐指数
1
解决办法
6433
查看次数

计算一个月内的星期数

可能重复:
计算.NET中的每月星期

我需要计算一个月内给定日期的星期数。我之所以勇气一个月,是因为我遇到的所有示例(在这里和其他地方)都是基于年度的。基本上,我想看看什么是14/2/2010星期几(dd / MM / yyyy格式)。给定星期一的开始日期,我希望它会返回2。

在计算中我必须如何了解文化?

c# culture

3
推荐指数
1
解决办法
2万
查看次数

CultureInfo和ISO 639-3

我正在寻找一种CultureInfoISO 639-3语言代码构造对象的方法.我没有在MSDN中找到任何关于它的内容,并试图从所有文化列表中获取它不起作用...

CultureInfo cInfo = CultureInfo.GetCultures(CultureTypes.AllCultures)
                         .FirstOrDefault(r => String.Equals(r.ThreeLetterISOLanguageName, "CCH", StringComparison.CurrentCultureIgnoreCase));
Run Code Online (Sandbox Code Playgroud)

将始终返回null(请注意,"CCH"是ISO-639-3列表中的一种语言).

任何想法都表示赞赏,谢谢!

.net c# culture iso cultureinfo

3
推荐指数
2
解决办法
4612
查看次数