我有这样的网格视图:
flag number
2013 2315
2013 25986
YYT Tredn (%) 2
YYT Tredn (%) 3
我想根据标志列中的值格式化数字,例如带有标志2013的行用逗号格式化,用YYY趋势(%)标记%,如下所示:
flag number
2013 2,315
2013 25,986
YYT Tredn (%) 2%
YYT Tredn (%) 3%
答案 0 :(得分:1)
这可能有点矫枉过正,但这就是我要完成你想要做的事情。
protected void GridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
switch (e.Row.Cells[0].Text)
{
case "2013":
e.Row.Cells[1].Text = FormatNumberWithComma(e.Row.Cells[1].Text);
break;
case "YYT Tredn (%)":
e.Row.Cells[1].Text = FormatNumberWithPercent(e.Row.Cells[1].Text);
break;
}
}
private string FormatNumberWithPercent(string input)
{
try
{
int result = int.Parse(input);
return String.Format("{0}%", result);
}
catch
{
return "NaN";
}
}
private string FormatNumberWithComma(string input)
{
try
{
int result = int.Parse(input);
return String.Format("{0:#,###0}", result);
}
catch
{
return "NaN";
}
}
答案 1 :(得分:0)
重新格式化OnRowDataBound事件中的值。在我提供的链接中有一个如何执行此操作的示例。