C# 如果文本框不为空,如何将其转换为浮动?

C# 如果文本框不为空,如何将其转换为浮动?,c#,C#,只有当文本框有值时,如何才能将文本框转换为浮点 我目前有这个float test=(float)Convert.ToDouble(textbox.Text) 它工作正常,但如果文本框为空则会出现错误。有很多方法可以做到这一点,但通常使用if进行测试。例如: float test; if (!string.IsNullOrWhiteSpace(textbox.text)) test = (float)Convert.ToDouble(textbox.Text); 一种非常常见的方法是使用

只有当文本框有值时,如何才能将文本框转换为浮点

我目前有这个
float test=(float)Convert.ToDouble(textbox.Text)


它工作正常,但如果文本框为空则会出现错误。

有很多方法可以做到这一点,但通常使用
if
进行测试。例如:

float test;
if (!string.IsNullOrWhiteSpace(textbox.text))
    test = (float)Convert.ToDouble(textbox.Text);

一种非常常见的方法是使用来进行转换。这样,您就可以用一条语句处理空值和无效值

bool success = double.TryParse(textbox.Text, out value);

不要忘了检查
成功
并处理可能的失败。

将其包含在If语句中非常简单

float test;

if(textbox.Text.Length > 0) //Or (textbox.Text != "")
    test = (float)Convert.ToDouble(textbox.Text);

另外一个建议是,多层验证总是一件好事。如果你有一个提交按钮,你应该在用户界面上的必填字段为空的情况下进行测试,然后再转换到该字段。

我认为更好的解决方案是:

float test = float.NaN;
if(float.TryParse(textbox.Text, out test ))
{
     // your code here
}

在尝试转换为float之前,请检查文本框是否不为空。请查看tryparse()。(msdn页面已经包括了示例)您的问题会自动回答——“如果文本框为空”——将其转换为代码,您会很好。