我想在每组 3 位数字后添加“,”。例如:当我输入 123456789 时,文本框将显示 123,456,789,我使用以下代码得到它:
private void textBox1_KeyUp(object sender, KeyEventArgs e)
{
if (!string.IsNullOrEmpty(textBox1.Text))
{
System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("en-US");
decimal valueBefore = decimal.Parse(textBox1.Text, System.Globalization.NumberStyles.AllowThousands);
textBox1.Text = String.Format(culture, "{0:N0}", valueBefore);
textBox1.Select(textBox1.Text.Length, 0);
}
}
我想更具体地了解这种格式。我只想为此文本框键入数字并使用十进制格式(之后键入 .)123,456,789.00
,我尝试使用此代码:
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) && e.KeyChar != '.')
{
e.Handled = true;
}
}
但它不起作用