我有一个用 C# 编写的 WinForms 应用程序
直到最近,我的表单上还有许多文本框供用户输入财务金额。我最初没有合并任何形式的掩码,每当我需要处理用户输入的值时,我都会使用 Decimal.Parse 将每个框中的文本解析为 Decimal 值;
但是我被要求让文本框看起来像财务金额 即 £1,050.75 而不是 1050.75 因此,我开始将文本框更改为 MaskedTextBox 并给它们一个 £#,##0.00 的掩码 但是,现在每次尝试解析 MaskedTextBoxes 中的文本时都会出现错误“输入字符串格式不正确”。
如何从 MaskedTextBox 获取用户输入并将其解析为十进制格式以供使用?
我应该完全使用 MaskedTextBox,还是有另一种方法可以在不影响 Decimal.Parse 方法的情况下在表单上显示财务类型格式?
最佳答案
当您从 Maskedtextbox 获取值时,它会将值取为 £#,##0.00 。因此该符号不会转换为十进制。尝试删除符号并将值转换为十进制。喜欢
string val= maskedTextBox1.Text.Replace("£","");
Decimal.Parse(val);
关于c# - 从蒙版文本框中解析文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20564234/