我制作了一款Android应用,但我遇到了一个问题。
btnCalc.Click += (object sender, EventArgs e) => {
totalScore = Convert.ToInt32(input1.Text) + Convert.ToInt32(input2.Text);
total.Text = totalScore.ToString();
};
这场比赛有13轮比赛。每轮都有一个文本框。
这是一个小游戏,你可以在游戏中保持得分。
你必须说明你将获得多少积分(总是数字)
但是当你给出错误答案时,文本框文本将是:×
最后,我想展示赢家的球员。 如何在没有错误答案的情况下添加这些数字?
当您长按文本框时,它将是×
。
答案 0 :(得分:0)
btnCalc.Click += (object sender, EventArgs e) => {
int input1 =0;
int input2 =0;
try{
input1 = Convert.ToInt32(input1.Text);
}
catch{
// do nothing, the input1 will remain 0
}
try{
input2 = Convert.ToInt32(input2.Text);
}
catch{
// do nothing, the input2 will remain 0
}
totalScore = input1+ input2;
total.Text = totalScore.ToString();
};
OR:
btnCalc.Click += (object sender, EventArgs e) => {
int input1 =0;
int input2 =0;
Int32.TryParse(input1.Text, out input1);
Int32.TryParse(input2.Text, out input2);
totalScore = input1+ input2;
total.Text = totalScore.ToString();
};
答案 1 :(得分:0)
如果您拥有所有文本框的数组,则可以执行以下操作:
var items = new[]
{
new TextBox { Text = "10" },
new TextBox { Text = "20" },
new TextBox { Text = "x" },
new TextBox { Text = "4" },
new TextBox { Text = "x" },
};
var total = (from it in items where it.Text != "x"
select Convert.ToInt32(it.Text)).Sum();
虽然当文本框包含的值不是" x"时,它并不处理这种情况。并不是一个数字。以下可能会更好:
var items = new[]
{
new TextBox { Text = "10" },
new TextBox { Text = "20" },
new TextBox { Text = "x" },
new TextBox { Text = "4" },
new TextBox { Text = "x" },
};
int val = 0;
var total = (from it in items where Int32.TryParse(it.Text, out val)
select val).Sum();