我有一些列的gridview,我需要按日期列排序gridview。但是我沒有正確地分類。這是我使用的代碼:如何對DataView中的DateTime列進行排序?
dt.DefaultView.Sort = "Meldingsdatum asc";
gvOutlookMeldingen.DataSource = dt;
gvOutlookMeldingen.DataBind();
有人可以幫助我,請。
我有一些列的gridview,我需要按日期列排序gridview。但是我沒有正確地分類。這是我使用的代碼:如何對DataView中的DateTime列進行排序?
dt.DefaultView.Sort = "Meldingsdatum asc";
gvOutlookMeldingen.DataSource = dt;
gvOutlookMeldingen.DataBind();
有人可以幫助我,請。
是你DateTime類型的列,如果沒有的話,它可能必須這樣做。在填充表格之前,在開始時正確完成此操作。或者,您可以創建類型爲DateTime的第二列,然後使用該列,但這有點凌亂:-)
我必須首先將該列的數據類型設置爲DateTime。然後我可以對它進行分類 – SamekaTV 2011-03-21 09:39:44
DataView將日期或任何內容存儲爲字符串類型。因此,當你按字符串排序時。要將其排序爲DateTime,您需要在添加任何數據之前將其轉換爲DateTime,如下所示:
dt.Columns [「Date」] .DataType = Type.GetType(「System.DateTime」);
我的代碼片段希望顯示的需要來設置列的typeof(DateTime的),才能正確地排序它
EntityCollection result = serviceProxy.RetrieveMultiple(querybyattribute);
DataTable dt = new DataTable();
dt.Columns.Add("Title");
dt.Columns.Add("Created On", typeof(DateTime));
foreach (Entity entity in result.Entities)
{
DataRow dr = dt.NewRow();
dr["Title"] = entity.Attributes["title"].ToString();
dr["Created On"] = entity.Attributes["createdon"];
dt.Rows.Add(dr);
}
DataView dv = dt.DefaultView;
dv.Sort = "Created On desc";
DataTable sortedDT = dv.ToTable();
dataGridView1.DataSource = sortedDT;
不是一個真正的答案,但它的鏈接。發佈答案,以便我可以接受 – SamekaTV 2011-03-21 08:48:06
作爲openshac的建議,答案是:「檢查DataColumn的DataType屬性並確保它設置爲DateTime。」 – DOK 2013-05-23 14:32:09