欢迎光临

木子屋

标题: GridView控件中DataFormatString属性失效解决方法

作者: dnawo

日期: 2010-07-01 05:24 PM

分类: Web编程

内容: 使用GridView控件BoundField列的DataFormatString属性，我们可以非常方便的设置字段值的显示格式，例如下边代码：
复制内容到剪贴板 程序代码<%@ Page Language="C#" %>
<%@ Import Namespace="System.Data" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DataTable tab = new DataTable();
tab.Columns.Add(new DataColumn("money", System.Type.GetType("System.Single")));
tab.Rows.Add(1.0001F);
tab.Rows.Add(2.0001F);
tab.Rows.Add(3.0001F);
tab.Rows.Add(4.0001F);
tab.Rows.Add(5.0001F);
GridView1.DataSource = tab;
GridView1.DataBind();
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:BoundField DataField="money" DataFormatString="￥{0:N2}"
HeaderText="money" />
</Columns>
</asp:GridView>
</div>

</form>
</body>
</html>
奇怪的是同样的代码，在本地测试时DataFormatString属性能起作用，但传到服务器上时却失效了：
后来查MSDN，尝试设置HtmlEncode属性值为False才得以解决：
复制内容到剪贴板 程序代码<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:BoundField DataField="money" DataFormatString="￥{0:N2}"
HeaderText="money" HtmlEncode="False" />
</Columns>
</asp:GridView>

+ 查看当前日志评论 (0)

登录

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.758 ms

返回

标题: GridView控件中DataFormatString属性失效解决方法

你没有权限发表评论

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.758 ms

返回

暂无评论

返回

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.820 ms

返回