C# WPF Калькулятор (ожидание следующего числа)

Друзья только изучаю С#, не бейте сильно плз.

Делаю калькулятор по аналогии стандартного windows. Хочу сделать не используя библиотеку которая за вас проводит расчеты.
В парсере не пойму как стирать число на циферблате когда вводится следующее число. Просто очистить поле ввода легко, но нужно именно когда вводится следующее. Логика такая:

  1. Есть 2 поля циферблата (по аналогии с windows). В основном отображается большИм размером введенное число, чуть выше уже само выражение.
  2. Распознаю текст с кнопок, раскидываю по соответствующим полям.
  3. При вводе любого не числа, делаю вывод что первое число для расчетов готово, добавляю в массив + сохраняю оператор выражения.
  4. Не могу додуматься как удалять текст только при вводе следующего числа и сохранить собственно его. Ну и разумеется нужно как-то второе число записать в лист. Не знаю на сколько доступно объяснил, уже всю башку сломал себе... Если что сори за глупый вопрос, нахожусь в процессе изучения, делаю сам себе поставленную задачу (просто личная практика для освоения материала).

Буду благодарен любой помощи, но если будет хоть какое-то разъяснение решения 100500 плюсов вам в карму.

internal class Parser
{
    MainWindow MainWindow;
    string tempNum = "";
    char tempOperator;
    List<double> numbers = new List<double>();

    public Parser(MainWindow mainWindow)
    {
        MainWindow = mainWindow;
    }

    public void ClickButton(object sender, RoutedEventArgs e)
    {
        Button button = (Button)sender;
        string buttonText = (string)button.Content;
        foreach (var item in buttonText)
        {
            if (char.IsDigit(item) || item == ',')
            {
                MainWindow.Dial.Text += buttonText;
            }
            else
            {
                tempNum = MainWindow.Dial.Text;
                numbers.Add(double.Parse(tempNum));
                tempOperator = item;
                MainWindow.Dial_Operator.Text = $"{tempNum} {item}";
            }


        }

    }
}

Ответы (0 шт):