2014-02-12 27 views

回答

1

我得到以下行的代码,只要 文本框为空,上述错误:

你如果您要使用Convert.ToDecimalDecimal.Parse,如果您想避免发生异常并检查它是否包含任何有效的输入T,然后用decimal.TryParse

decimal Qty; 
if(!decimal.TryParse(txtQtyforAnalysis.Text, out Qty) 
{ 
    //Some invalid input , empty string or invalid decimal number 
} 
else 
{ 
    //valid decimal number 
} 

,如果你要检查你的TextBox.Text为空字符串,则可以使用string.IsNullOrEmpty或者string.IsNullOrWhiteSpace(提供框架4.0或更高版本)像:

if(string.IsNullOrWhiteSpace(txtQtyforAnalysis.Text)) 
{ 
//Don't do parsing 
} 
+1

谢谢!它解决了我的问题:) –

0

当没有任何东西时,您可以将默认值设置为0,假设您希望这样做。

decimal Qty = Convert.ToDecimal(txtQtyforAnalysis.Text == "" ? "0" : txtQtyforAnalysis.Text); 

或者仅使用Decimal.TryParse

decimal Qty; 

if (decimal.TryParse(txtQtyforAnalysis.Text, out Qty)) 
{ 
    //it worked 
} 
1

什么你是否期望发生?如果你想 “” 来表示数量为0,然后做这样的事情:

Decimal qty = String.IsNullOrEmpty(txtQtyforAnalysis.Text) ? 0 : Convert.ToDecimal(txtQtyforAnalysis.Text); 
0

试试这个

If IsNumeric(txtQtyforAnalysis.Text) 
{ 
    decimal Qty = Convert.ToDecimal(txtQtyforAnalysis.Text); 
    } 
相关问题