在TextBox中我验证0到1之间的数字。我希望系统接受值0,5而不是0.5
CultureInfo before = System.Threading.Thread.CurrentThread.CurrentCulture;
try
{
System.Threading.Thread.CurrentThread.CurrentCulture =
new CultureInfo("de-DE");
var rngVald = new RangeValidator
{
ControlToValidate = IdOfMyTextBox,
MinimumValue = "0",
MaximumValue = "1"
Type = ValidationDataType.Double,
ErrorMessage = "<span class=\"error\">*value should be bet. 0 and 1</span>"
};
panel.Controls.Add(rngVald);
}
finally
{
System.Threading.Thread.CurrentThread.CurrentUICulture = before;
}
即使在德国,浮点数用逗号表示,但系统仍然不接受0,5作为有效数字。
答案 0 :(得分:1)
你改变了文化?您最迟必须在Page_Init
中执行此操作。
此外,将动态验证器添加到面板后,将文化更改回原来的状态并不起作用。这不是验证输入的时间。因此,在进行验证时,文化将处于活动状态,而不是在将其添加到页面时。