如何解决如何在 Winforms、C# 中为文本框添加千位分隔符
我想知道如何在输入数字时为文本框添加千位分隔符(如逗号)。
即1,500 而不是 1500。
解决方法
幸运的是,我解决了我的问题。
private void textBox1_TextChanged(object sender,EventArgs e)
{
if (textBox1.Text == "" || textBox1.Text == "0") return;
decimal price;
price = decimal.Parse(textBox1.Text,System.Globalization.NumberStyles.Currency);
textBox1.Text = price.ToString("#,#");
textBox1.SelectionStart = textBox1.Text.Length;
}
我们可以在 textBox 的 TextChanged 方法中编写此代码,为 textBox 添加千位分隔符。
顺便说一句,如果您想稍后将其更改为第一个状态,或者您想使用文本框中的数字,在数据库中,您可以使用替换方法。
即textBox1.Text.Replace(",","");
希望你觉得它有用。
,方法 1 - 向文本框添加千位分隔符 - 如果您想在客户端向 TextBox 输入数字后立即向 TextBox 添加千位分隔符,您可以在 TextBox 的 TextChanged 事件中使用以下代码。
private void textBox1_TextChanged(object sender,EventArgs e)
{
if (textBox1.Text == "" || textBox1.Text == "0") return;
decimal number;
number = decimal.Parse(textBox1.Text,System.Globalization.NumberStyles.Currency);
textBox1.Text = number.ToString("#,#");
textBox1.SelectionStart = textBox1.Text.Length;
}
方法 2 - 给标签添加千位分隔符 - 如果您想向标签添加一千个分隔符,使其文本稳定且不会作为 TextBox 更改,您可以使用下面使用 NumberFormatInfo 帮助器类的代码。
var separator= new System.Globalization.NumberFormatInfo() {
NumberDecimalDigits = 0,NumberGroupSeparator = "."
};
var import = 1234567890;
var export = import.ToString("N",separator);
方法 3 - 最简单的方法 - 为 TextBox 或 Label 中的文本添加千位分隔符的最简单方法是使用 ToString("N") 方法,如下面的代码,
Convert.ToDouble("1234567.12345").ToString("N")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。