2015-06-17 93 views
0

我想從gridview的今天的日期倒計時的日期,所以它顯示過去60天。gridview的日期倒計時

我已經寫了這樣的代碼,但它不工作:

Private Sub BindGrid() 

    Dim dt As New DataTable 
    dt.Columns.Add("Date") 
    dt.Columns.Add("TallyCount") 
    dt.Columns.Add("AcceptedCount") 
    gvTally.DataSource = dt 

    Dim dr As DataRow 

    Dim DateCount As Integer = 1 

    Dim DateNow As Date = DateTime.Today 

    For j As Integer = DateCount To 60 
     dr = dt.NewRow 

     DateNow = DateNow.AddDays(-j) 

     dr.Item("Date") = DateNow.ToString("MM/dd/yyyy") 
     dr.Item("TallyCount") = 1 
     dr.Item("AcceptedCount") = 2 

     dt.Rows.Add(dr) 


    Next 

    gvTally.DataSource = dt 
    gvTally.DataBind() 

End Sub 

日期將隨機抽取2015年6月2日跳號喜歡2015年5月27日。

1 2 06/16/2015 
1 2 06/14/2015 
1 2 06/11/2015 
1 2 06/07/2015 
1 2 06/02/2015 
1 2 05/27/2015 
1 2 05/20/2015 
1 2 05/12/2015 
1 2 05/03/2015 
1 2 04/23/2015 
1 2 04/12/2015 
1 2 03/31/2015 
1 2 03/18/2015 
1 2 03/04/2015 
1 2 02/17/2015 
1 2 02/01/2015 

我在做什麼錯?

回答

0

您正在使用循環。從

Dim DateNow As Date = DateTime.Today 

For j As Integer = DateCount To 60 
    dr = dt.NewRow 

    DateNow = DateNow.AddDays(-j) 

第一次,它會扣除1從今天起,下一次-2,-3,然後從;:那麼檢查代碼在第三次迭代中,它已經減去了6個總數(3 + 2 + 1)。將其更改爲:

DateNow = DateNow.AddDays(-1) 

現在,它將在每次迭代中扣除一天。

+0

謝謝。我很愚蠢。 –

+0

不是真的 - 如果循環使用了'DateTime.Now'而不是之前的值,它就會出現。點擊勾選,如果它有效,請將它從未答覆列表中移除。 – Plutonix