首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

gridview的数字列格式化之后怎么重新转换为数值

2012-03-17 
gridview的数字列格式化之后如何重新转换为数值protected decimal GetTotalPrice(){decimal price 0for

gridview的数字列格式化之后如何重新转换为数值
protected decimal GetTotalPrice()
  {
  decimal price = 0;
  foreach (GridViewRow row in GridView1.Rows)
  {
  price +=decimal.Parse(row.Cells[3].Text}
  return price;
   
  }
  这段代码用于遍历一个gridview 的" 小计"列,此列已格式化为"{0:c2}"的货币格式, 现在我要计算它的总价。但是
row.cells[3].text 的结果是格式化后的字符串,无法转化为数值decimal型,,如何才能将格式化过的字符转换为数值?

[解决办法]
在绑定事件里面进行相加,这个时候是没格式化的

decimal price = 0;
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
price += decimal.Parse(DataBinder.Eval(e.Row.DataItem, "字段名称").ToString());
}
}
[解决办法]

C# code
Decimal.Parse(row.Cells[3].Text, NumberStyles.Currency) 

热点排行