标签: culture

如何将文化更改为.Net中的DateTimepicker或日历控件

当欲望文化与PC中安装的文化不同时,如何在.Net中设置国际化DateTimepickerCalendar WinForm控制?

.net c# culture internationalization datetimepicker

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

从国家/地区名称或RegionInfo对象获取CultureInfo对象

给定一个特定的国家代码,例如"CH",我如何获得CultureInfo对象?特定的国家/地区代码是动态的(在运行时更改).我只有国家代码,我想知道是否有可能从创建CultureInfo对象只是国家代码.我得到的确切文化无关紧要(fr-CH/de-CH).

我正在尝试做这样的事情:

CultureInfo c = CultureInfo.CreateSpecificCulture("CH");
Run Code Online (Sandbox Code Playgroud)

是否可以从RegionInfo对象创建文化?然后它看起来像这样:

RegionInfo r= new RegionInfo("CH");
CultureInfo c = CultureInfo.CreateSpecificCulture(r);
Run Code Online (Sandbox Code Playgroud)

显然前面的例子没有编译,他们只是想知道我想要实现的目标.

c# asp.net culture region

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

需要根据jquery中的文化来设置日期掩码

具有文化的MVC页面取决于用户.在搜索选项中(搜索可以通过DueDate完成),我需要在DueDate文本框上有一个掩码.面具必须依赖于用户的文化.在js和cshtml中都有一个错误说:mask.split is not a function.将我jquery.maskedinput-1.2.3.js从.更改make.splitmake.toString().split并且错误消失了,但必须看起来像这样:[object Object]或者有一些01数字.任何的想法?代码cshtml如下所示:

   <script type="text/javascript">
    $(function () {
        var maskFormat = @Html.CurrentDateMask();
        $(".DateBox").mask(maskFormat);
    });
   </script>
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc jquery culture html-helper

15
推荐指数
1
解决办法
964
查看次数

Debug.WriteLine()与Console.WriteLine()以不同方式处理文化.为什么?

请考虑以下Console App代码:

Thread.CurrentThread.CurrentCulture = new CultureInfo("en-GB");
Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture;

DateTime date = new DateTime(2014, 01, 19);

Console.WriteLine("{0}", date); // Prints 19/01/2014
Debug.WriteLine("{0}", date);   // Prints 01/19/2014
Debug.WriteLine(date);          // Prints 19/01/2014
Run Code Online (Sandbox Code Playgroud)

如评论中所述,Console.WriteLine()打印19/01/2014Debug.WriteLine()打印01/19/2014.

更糟糕的是 - Debug.WriteLine("{0}", date)给出不同的输出Debug.WriteLine(date)......

是否会Debug.WriteLine()忽略线程的文化设置?

有没有办法Debug.WriteLine()利用线程的文化设置?或者我必须使用String.Format()并将结果传递给Debug.WriteLine()

(注意:我在Windows 8.1 64位,en-GB上使用Visual Studio 2013和.Net 4.51以及AnyCPU调试版本运行.)

.net c# culture date-formatting

13
推荐指数
2
解决办法
1613
查看次数

代码分析/ FxCop CA1726:UsePreferredTerms显示已取消已取消

我在我们拼着性英国LL两个L的编辑.我想使用代码分析规则"CA1726:UsePreferredTerms"但我不希望它将"已取消"标记为违规.

我已经尝试添加<CodeAnalysisCulture>en-GB</CodeAnalysisCulture>到项目文件中以鼓励代码分析使用英语拼写

我已经尝试将<Recognized><Word>Cancelled</Word></Recognized>项目添加到CustomDictionary.xml中

每次使用取消的单词时,我都不热衷于添加抑制.

我想要一个可以检查到源代码控制的解决方案,供其他开发人员使用,所以我不想改变我的本地 C:\Program Files (x86)\Microsoft Visual Studio 12.0\Team Tools\Static Analysis Tools\FxCop\CustomDictionary.xml

我正在使用Visual Studio 2013.

有没有办法实现这个目标?

culture code-analysis fxcop visual-studio visual-studio-2013

13
推荐指数
1
解决办法
457
查看次数

TextBox不支持系统十进制(点或逗号)

如果我将Texta 绑定TextBox到float属性,则显示的文本不符合系统十进制(点或逗号).相反,它总是显示一个点('.').但是如果我在a中显示值MessageBox(使用ToString()),则使用正确的System Decimal.

在此输入图像描述

XAML

<StackPanel>
    <TextBox Name="floatTextBox"
             Text="{Binding FloatValue}"
             Width="75"
             Height="23"
             HorizontalAlignment="Left"/>
    <Button Name="displayValueButton"
            Content="Display value"
            Width="75"
            Height="23"
            HorizontalAlignment="Left"
            Click="displayValueButton_Click"/>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)

代码背后

public MainWindow()
{
    InitializeComponent();
    FloatValue = 1.234f;
    this.DataContext = this;
}
public float FloatValue
{
    get;
    set;
}
private void displayValueButton_Click(object sender, RoutedEventArgs e)
{
    MessageBox.Show(FloatValue.ToString());
}
Run Code Online (Sandbox Code Playgroud)

到目前为止,我已经用一个转换器解决了这个问题,转换器用系统十进制取代了dot(这是有效的),但这是必要的原因是什么?这是设计,是否有更简单的方法来解决这个问题?

SystemDecimalConverter(以防其他人遇到同样的问题)

public class SystemDecimalConverter : IValueConverter
{
    private char m_systemDecimal = '#';
    public SystemDecimalConverter()
    {
        m_systemDecimal = GetSystemDecimal();
    }
    object IValueConverter.Convert(object value, Type …
Run Code Online (Sandbox Code Playgroud)

c# wpf culture textbox wpf-controls

12
推荐指数
1
解决办法
4326
查看次数

Globalize.js - 如何解析日期和时间而不仅仅是日期

Globalize.js允许您根据应用的当前区域性解析日期字符串

var date = Globalize.parseDate("17/07/2013"); //Wed Jul 17 00:00:00 PDT 2013
Run Code Online (Sandbox Code Playgroud)

我想做的是解析DateTime.javascript Date对象处理这个,我很惊讶Globalize.js库没有.

var date = new Date("07/17/2013 11:55 pm"); //Wed Jul 17 23:55:00 PDT 2013
var date = Globalize.parseDate("07/17/2013 11:55 pm"); //null
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?我倾向于自己解析时间部分.是否有另一个扩展的库Globalize.js提供这种功能?我环顾四周但却找不到多少.

更新w /接受的答案

如果您知道日期所在的格式,则可以解析日期.

    var date = Globalize.parseDate("17/07/2013 11:55 pm", "MM/dd/yyyy hh:mm tt"); 
    //date = null
Run Code Online (Sandbox Code Playgroud)

在我的示例中,日期将为null,因为它期望时间段的格式为a.mp.m..一旦我改变了,我就能解析一个日期时间.

   var date = Globalize.parseDate("17/07/2013 11:55 p.m.", "MM/dd/yyyy hh:mm tt"); 
   //date = Wed Jul 17 23:55:00 PDT 2013
Run Code Online (Sandbox Code Playgroud)

注意:这仅适用于弃用的 Globalize …

javascript culture datetime javascript-globalize

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

为什么我会得到"文化不受支持"以及什么,如果有什么,我该怎么办呢?

我在这里的"返回"行有一个断点:

[HttpGet]
[Route("api/Test/{id1}/{id2}")]
public NRBQEntity GetTestMessage(String id1, String id2)
{
    return NRBQClient.GetTestMessage(id1, id2);
}
Run Code Online (Sandbox Code Playgroud)

虽然它没有崩溃应用程序,当我达到这一点,我得到,

" Exception:Thrown:"不支持文化."(System.Globalization.CultureNotFoundException)抛出了System.Globalization.CultureNotFoundException:"不支持文化. "

试图支持哪种文化,为什么不支持这种文化,以及我应该做些什么来支持这种文化?

UPDATE

回答sphanley:

除了代表"BarbeQue的新骑士"之外,它还是一个"骨架"(现在)实体看起来像这样:

public class NRBQEntity
{
    public NRBQEntity()
    {

    }

    public String Value { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

更新2

对AnotherUser的回答:

这不是我的代码,所以我只是在试图理解它; 它作为一个起点提供给我复制/重构一个现有的独立项目,并将其纳入"解决方案".已经说过,回答你的问题,这里是解决方案中"GetTestMessage()"的所有实例:

[HttpGet]
[Route("api/Test/{id1}/{id2}")]
public NRBQEntity GetTestMessage(String id1, String id2)
{
    return NRBQClient.GetTestMessage(id1, id2); 
}

[HttpGet]
[Route("api/Test/{id1}/{id2}")]
public NRBQEntity GetTestMessage(String id1, String id2)
{
    return NRBQService.GetNRBQEntity(id1, id2);
}

public interface INRBQClient
{
    NRBQEntity GetTestMessage(String id1, String id2);
}

public NRBQEntity …
Run Code Online (Sandbox Code Playgroud)

c# globalization culture cultureinfo asp.net-web-api

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

为什么英语(加勒比海)的文化名称为"en-029"?

为什么英语(加勒比海)的文化名称为"en-029"?

我知道"en-CA"用于英语(加拿大),但为什么029?它意味着什么?为什么选择它?

.net c# culture cultureinfo

11
推荐指数
1
解决办法
2329
查看次数

文化不变对象ToString()

如何调用ToString()对象并使其使用不变文化?在ToString()实现的对象上有重载IConvertible(比如bool,int,float ..),但如果有问题的对象怎么IConvertible办?

.net formatting culture cultureinfo

11
推荐指数
2
解决办法
5036
查看次数