怎样格式化GridView中Eval输出的值的方法

时间:2021-04-16

  ASP.NET 中用 GridView 时,常常用到自定义模板(因为默认的实在不能满足我们的需求),而自定义时,往往少不了 Eval 来输出字段值。

  但Eval 的内容并不一定很令我们满意,我们可能要先将其格式化一下再输出。

<asp:TemplateField HeaderText="价格">
<ItemStyle CssClass="price" />
<ItemTemplate><%# String.Format("{0,5:0.00}", Eval("Price")) %></ItemTemplate>
</asp:TemplateField>

  如上,我们将 Price 字段的值经 String.Format 格式化后输出。顺便提一下 {0,5:0.00},它是如下意义:

  Price 保留两位小数输出(四舍五入),且小数不足两位时补零。

  Price 算上小数点,算上小数(两位)不足五位时,前面加空白,补足五位。

  再看下日期的

<ItemTemplate><%# Convert.ToDateTime(Eval("ExpireDate")).ToString("yyyy-MM-dd") %></ItemTemplate>

  再看下自定义方法的

  前面都是使用系统内部的方法,自定义方法,需要先定义一个至少是 protected 的方法,比如:

protected string foo(string str)
{
return str + ":)";
}

  然后应用时,需要注意转换 Eval 字段的类型为 string。比如:

<ItemTemplate><%# foo(Eval("realName").ToString()) %></ItemTemplate>

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章