显示没有错误答案的总分

时间:2015-03-06 12:03:22

标签: c# android xamarin

我制作了一款Android应用,但我遇到了一个问题。

btnCalc.Click += (object sender, EventArgs e) => {
    totalScore = Convert.ToInt32(input1.Text) + Convert.ToInt32(input2.Text);
    total.Text = totalScore.ToString();
};
这场比赛有13轮比赛。每轮都有一个文本框。

这是一个小游戏,你可以在游戏中保持得分。 你必须说明你将获得多少积分(总是数字) 但是当你给出错误答案时,文本框文本将是:×

最后,我想展示赢家的球员。 如何在没有错误答案的情况下添加这些数字?

当您长按文本框时,它将是×

2 个答案:

答案 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();