日期:2014-05-18  浏览次数:20447 次

请教各位高手一个GridView 问题!在线等
<asp:TemplateField   HeaderText= "单价 ">
                                                                            <ItemTemplate>
                                                                                    <%#   Convert.ToDecimal(Eval( "first_value ").ToString())   /   Convert.ToDecimal(Eval( "quantity ").ToString())%>    
                                                                            </ItemTemplate>  
  </asp:TemplateField>

问题:当quantity字段为0的时候就不进行单价列的计算,请问怎么解决

------解决方案--------------------
<%# Convert.ToDecimal(Eval( "first_value ").ToString()) / Convert.ToDecimal(Eval( "quantity ").ToString())%>
改成
<%# GetUnitPrice(Eval( "first_value ").ToString(),Eval( "quantity ").ToString()) %>

.cs文件
public string GetUnitPrice(string pre1, string pre2)
{
//計算
}

------解决方案--------------------
float a=28.2828; //你要保留两位小数的值
float b=a.ToString( ".00 ");
------解决方案--------------------
public string GetUnitPrice(string pre1, string pre2)
{
try
{
return (Convert.ToDecimal(pre1) / Convert.ToDecimal(pre2)).ToString( ".00 ")
}
catch
{
return "0.00 ";
}
}