当前位置:编程学习 > C#/ASP.NET >>

为什么gridview就不能格式化呢?急

在绑定的日期列和比率列里已经设置了格式化内容
日期列的 DataFormatString="{0:yyyy-MM-dd} HtmlEncode="False"
比率列的  DataFormatString="{0:p} HtmlEncode="False"
现在的问题就是如果gridview的datasource为Dt,这个表是后台程序中动态生成的
那么就不格式化为标准的日期格式,
如果是从数据库表里的直接取出的ds的化,就完全没问题,不知道怎么回事,希望大家帮帮忙!
--------------------编程问答-------------------- 怎么没人回答啊 --------------------编程问答-------------------- 动态构造的DataTabe里对应列类型是DataTime吗? --------------------编程问答-------------------- 照这样看,有可能是你后台程序构造的是时间字符串,因此那个dataformate并没其作用

你可以考虑更改下后台程序相关代码 --------------------编程问答-------------------- 多谢提醒 --------------------编程问答-------------------- 呵呵 你可以在后台代码中写
前台用模板列

protected void GridView_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            Label lbTime = (Label)e.Row.Cells[0].FindControl("LbChangeTime");
            if (lbTime == null)
            {
                return;
            }

            if (!lbTime.Text.Equals(string.Empty))
            {
                DateTime dt = DateTime.Parse(lbTime.Text.Trim());
                lbTime.Text = dt.ToString("yyyy-MM-dd HH:mm:ss");
            }
        }

    }
--------------------编程问答--------------------

<asp:TemplateField HeaderText="修改时间">
   <itemstyle width="15%"></itemstyle>
     <itemtemplate>
            <asp:Label ID="LbChangeTime" runat="server" Text='<%# Bind("ChangeTime") %'></asp:Label>                                
                                
</itemtemplate>
</asp:TemplateField>
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,