Попробуйте добавить этот код в KeyUp
обработчик событий вашего TextBox
private void textBox1_KeyUp(object sender, KeyEventArgs e)
{
if (!string.IsNullOrEmpty(textBox1.Text))
{
System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("en-US");
int valueBefore = Int32.Parse(textBox1.Text, System.Globalization.NumberStyles.AllowThousands);
textBox1.Text = String.Format(culture, "{0:N0}", valueBefore);
textBox1.Select(textBox1.Text.Length, 0);
}
}
Да, это изменит значение, хранящееся в текстовом поле, но всякий раз, когда вам нужно фактическое число, вы можете использоватьследующая строка, чтобы получить его из текста:
int integerValue = Int32.Parse(textBox1.Text, System.Globalization.NumberStyles.AllowThousands);
Конечно, не забудьте проверить, что то, что пользователь вводит в текстовое поле, является действительным целым числом.