验证挪威数字格式

时间:2014-11-25 11:25:13

标签: c# .net webforms formatting culture

所以我有一个基于用户浏览器文化验证数字输入的方法。这是在asp.net webforms中。

public static bool IsNumberInCulture(object source, EventArgs e) {
        TextBox validateSource = (TextBox)source;
        string validateThis = validateSource.Text.Trim();
        decimal result;

        if (validateThis.Length > 0) {
            if (decimal.TryParse(validateThis, NumberStyles.Number, UserCulture, out result)) {
                if (validateThis != result.ToString("N0", UserCulture) && validateThis != result.ToString("N1", UserCulture) && validateThis != result.ToString("N2", UserCulture)) {
                    return false;
                } else {
                    return true;
                }
            }
        }
        return false;
    }

这看起来效果很好。除挪威数字外。

奇怪的是,浏览器正确格式化数字显示。例。 6 000,00。 如果我在文本框中单独删除并替换数字,则数字验证为true。 如果我完全删除文本框中的数字,并输入一个新的数字,使用相同的格式(数字,空格,数字,数字,数字,逗号,数字编号),数字验证为false !!

我不明白这一点。有人有什么想法吗?

0 个答案:

没有答案