gpt4 book ai didi

c# - 如何格式化带有千位分隔符和小数点分隔符的 Windows 窗体文本框以进行数字输入

转载 作者:bug小助手 更新时间:2023-10-28 10:49:27 25 4
gpt4 key购买 nike

我是 Windows 窗体的新手并尝试做一些事情。我正在使用 C#。

我使用的是 Windows 窗体,我在窗体上放置了八个文本框,并且都是带有十进制值的数字。

我喜欢实现以下结果。我的小数分隔符是逗号,千位分隔符是点。我见过像##.###,## 之类的东西,但不记得了....我怎样才能实现以下方法?

所以我的想法是,当我输入 1234 并将焦点从文本框中移开时,它应该格式化,当我再次回到文本框时,千位分隔符不应该只格式化小数分隔符。

我想我必须使用一些事件,比如 LostFocus。

输入                结果

1234                1.234,00

12.34                   12,34

12,34                   12,34

1234567     1.234.567,00

12,34                   12,34

12345,67     12.345,67

最佳答案

在文本框中的 LostFocus 事件中,使用:

textBox1.Text = string.Format("{0:#,##0.00}", double.Parse(textBox1.Text));

在应用上述逻辑之前,请先确保文本是 double /整数,否则会引发异常。这个解决方案相当苛刻、强硬。

如果您希望格式采用特定文化而不是您当前计算机的文化,那么

textBox1.Text = string.Format(System.Globalization.CultureInfo.GetCultureInfo("id-ID"), "{0:#,##0.00}", double.Parse(textBox1.Text));

上面的例子是印尼货币格式,其中千位分隔符使用点(“.”)而不是逗号(“,”)。

关于c# - 如何格式化带有千位分隔符和小数点分隔符的 Windows 窗体文本框以进行数字输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15473216/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com