C#计算器制作,0的设计出错,大触帮我分析一下。

例子:A+B=010+020;前面两个0是无法输入的,提示"请先输入有效数字"
工程文件:C#整数计算器
变量

bool t = true;   //判断是否输入运算符
bool i = true;   //判断是否需要清空文本框
string a, b;     //运算符的前后字符串
int A, B;        //运算符前后带符号的数值
int f;           //判断运算符,1=+,2=-,3=×,4=÷

0按键

//0
private void button0_Click(object sender, EventArgs e)
{
 A = Convert.ToInt32(a);  //这里不会出现小数,所以用int即可
 B = Convert.ToInt32(b);
 string txt = textBox1.Text;
 //判断0的输入是否有效
if (t == true & i == true & A != 0)
{
 a = a + 0;
 textBox1.Text = txt + "0";
}
else if (t == false & i == true & B != 0)
{
 b = b + 0;
 textBox1.Text = txt + "0";
}
else if (i == false)
{
 MessageBox.Show("请先输入有效数字");
}
 else if (t == false & B == 0)
 {
  MessageBox.Show("请先输入有效数字");
 }
}

判断输入是否有先导的0?那根本不需要这么麻烦,直接这么写
if (textBox1.Text.StartsWith("0"))
MessageBox.Show("请先输入有效数字");