我有一个数据表,其中包含1个日期列
dttable.Columns.Add("StartDate", typeof(DateTime));
dttable.Columns.Add("Col2");
dttable.Columns.Add("Col3");
dttable.Columns.Add("Col4");
dttable.Columns.Add("Col5");
在使用StartDate排序后,我将此表与gridview绑定,如下所示
dttable.DefaultView.Sort = "StartDate";
GridView1.DataSource = dttable;
GridView1.DataBind();
在gridview中,我希望字符串格式的日期为" dd-MMM-yyyy"。我怎么能这样做?
答案 0 :(得分:1)
您可以使用DataFormatString
<columns>
<asp headertext="StartDate" dataformatstring="{0:dd-MMM-yyyy}"
datafield="StartDate" />
</columns>
答案 1 :(得分:1)
在aspx文件中,只需使用以下代码作为startdate列
<ItemTemplate>
<asp:Label ID="StartDate" runat="server" Text='<%# Eval("StartDate","{0:dd-MMM-yyyy}") %>' ></asp:Label>
</ItemTemplate>
答案 2 :(得分:0)
可能会有效。
string str="";
for(int i=0;i<dttable.Rows.Count;i++)
{
str = dttable.rows[i]["StartDate"].toString("dd-MM-yyyy");
dttable.rows[i]["StartDate"] = DateTime.ParseExact(str, "dd-MM-yyyy",null);
}
dttable.DefaultView.Sort = "StartDate";
GridView1.DataSource = dttable;
GridView1.DataBind();