Xamarin,有没有更简单的方法可以将Entry转换为float和来回?

时间:2019-07-13 00:22:51

标签: xamarin xamarin.forms

如何将Entry转换为浮点数或数字,以便可以将数字加在一起。

我试图通过float.parse将Entry转换为float。如果我需要浮点数来字符串它是.Tostring();但是float.parse引发了一些异常。

        //input string
        entry1 = n1.Text;
        //convert
        float floatn1 = float.Parse(entry1);

        //show entered
        //n1Label.Text = entry1;

        entry2 = n2.Text;
        float floatn2 = float.Parse(entry2);

        float sum = floatn1 + floatn2;
        string s = sum.ToString();

        nsumLabel.Text = s;

System.format异常错误

1 个答案:

答案 0 :(得分:0)

由于entry1文本的浮点格式不正确,因此引发了异常。

使用float.TryParse进行检查:

//input string
entry1 = n1.Text;

if(!float.TryParse(entry1, out float floatn1)) {
    // incorrect format
    // tell the user to input a decimal number in a correct format
    return;
}
// correct format, continue
如果float.TryParse中的值不能转换为浮点数(通常是由于格式不正确),则

false返回entry1。如果格式正确,则浮点值将存储在out参数中,您就可以使用它。