Числовое значение в текстовом поле для добавления запятых - PullRequest
0 голосов
/ 18 сентября 2018

Я попытался добавить кнопку для добавления запятых внутрь, как показано ниже:

protected void Button1_Click(object sender, System.EventArgs e) {
    Number.Text = "";
    string s = string.Format("{0:n0}",1234567890);
    Number.Text += "value : 1234567890";
    Number.Text += "<br />Thousands Separator: " + s;

    Number.Text += "<br/><br />another solution";
    int value = 1234567890;
    string formatedstring = value .ToString("#,##0");
    Number.Text += "<br />result: " + formatedstring;
}

Однако я хочу, чтобы это изменилось, как только я наберу его, подобно функции обновления в Unity.Добавление функции кнопки очень неэтично.

1 Ответ

0 голосов
/ 18 сентября 2018

Создать событие для текста, измененного в текстовом поле.Затем добавьте следующий код:

 void numberTextBox_TextChanged(object sender, EventArgs e)
    {
      string value = numberTextBox.Text.Replace(",", "");
      ulong ul;
      if (ulong.TryParse(value, out ul))
      {
        numberTextBox.TextChanged -= numberTextBox_TextChanged;
        numberTextBox.Text = string.Format("{0:#,#}", ul);
        numberTextBox.SelectionStart = numberTextBox.Text.Length;
        numberTextBox.TextChanged += numberTextBox_TextChanged;
      }
    }
...