ASP.NET CompareValidator validate Currency

CompareValidator HAS BUG OR I AM MISING SOMETHING ? 

I have a text box for price then I have a compare validator. The problem here is that even if I put a number like $32000.00 it gives me the error message

I have a CompareValidator, I set the Operator=DataTypeCheck, and Type=Currency
However, on the application, if i enter $3,000.00 triggers the error message

<asp:CompareValidator ID="CompareValidator6" ControlToValidate="txtPrice" Operator="DataTypeCheck" Type="Currency" runat="server" ErrorMessage="Currency Format Only Accepted For Price"></asp:CompareValidator>

<asp:CompareValidator ID="CompareValidator_txtAmount" runat="server" Display="Dynamic" ErrorMessage="Amount is invalid" ControlToValidate="txtAmount" Operator="DataTypeCheck"  Type="Currency" CultureInvariantValues="True"></asp:CompareValidator>

Does anyone encounter problem using the compare validator against a textbox with operator=DataTypeCheck, type="Currency" and the textbox value contains more than 2 decimal point?
With type="Double" it works fine with more than 2 decimal point but must not have comma.
Below is my test result:
Currency 10,200.20 pass
Currency 10,200.204 fail
Double 10,200.20 fail
Double 10200.204 pass
Any suggestion to overcome this issue?

http://www.cnblogs.com/emanlee/archive/2009/08/12/1544645.html

http://forums.asp.net/t/1277960.aspx

http://www.tech-archive.net/Archive/DotNet/microsoft.public.dotnet.faqs/2004-08/0089.html

http://www.vbdotnetforums.com/web-forms/16645-comparevalidator-currency.html

http://www.codeguru.com/forum/showthread.php?t=307614

原文地址:https://www.cnblogs.com/emanlee/p/1546744.html