Вы бы этого не сделали, дженерики не могут быть ограничены таким образом, чтобы поддерживать арифметические операторы (или конкатенацию). Вам необходимо создать перегрузки.
public int Add(int x, int y)
public double Add(double x, double y)
public decimal Add(decimal x, decimal y)
// etc.
Конечно, у вас все еще есть проблема определения, как именно анализировать ваши данные. Источником является TextBox, а данные будут по сути строками. Вам нужно будет определить тип номера, если он есть.
Если вы делаете это для реального приложения, у вас не должно быть этой проблемы. Ваше текстовое поле должно быть ожидаемым для получения ввода от пользователя в виде целого числа, или десятичного числа, или строки и т. Д. Если оно не конвертируется в правильный тип, это недопустимый ввод от вашего пользователя , Вы не хотели бы, чтобы ввод был магически выведен.