2016-11-13 20 views
0

クリックするたびに日付を増やしたい。 私はポストバックの間に値を保持する必要がありますが、それを行う方法はありません。ページの先頭に戻る私はどんな助けにも感謝します。 ここI'amがやろうとするものである:
ボタンをクリックするたびにASP.netの変数を増やす

int myNumber = 0; 
protected void Button1_Click1(object sender, EventArgs e) 
{ 
    lblDate.Text = DateTime.Now.StartOfWeek(DayOfWeek.Monday).AddDays(myNumber).ToShortDateString(); 
    myNumber++; 
} 


更新:
私finalyの目標は、次のボタンと前の週、私はforwordたい意味とbackwordで初日の次の週を取得することです...

public int NextCount 
{ 
    get { return ViewState["Count"] != null ? (int)ViewState["Count"] : 7; } 
    set { ViewState["Count"] = value; } 
    } 



protected void btnNext_Click1(object sender, EventArgs e) 
     { 

      lblsum.Text = DateTime.Now.StartOfWeek(DayOfWeek.Monday).AddDays(NextCount).ToShortDateString(); 
      NextCount = NextCount+7; 
     } 

protected void btnPrevious_Click(object sender, EventArgs e) 
     { 
      lblsum.Text = DateTime.Now.StartOfWeek(DayOfWeek.Monday).AddDays(NextCount).ToShortDateString(); 
      NextCount = NextCount - 7; 
     } 


しかし、私は前ボタンをクリックすると...その後、反応は次のボタンと同じように来て二、三をクリックした後、ワンクリックでの遅延があります前から次へクリックすると私はセッションでそれを保存しなければならないのでしょうか?

+0

ルックは - あなたのニーズに依存します:) –

+0

@OndrejSvejdarは、私はちょうどそれがカレンダーとして次の日付を表示使用したいです。私がクリックすると、次週の日付と次のクリックを次の週の日付の次の日に表示したいなどと... myNumberは6または7から始めるべきだと思うが、私はそれをおそらくseesionに保存しなければならない。だからどうすればいいのか教えてください;)事前にありがとう –

+0

@JonasWillander解決策の下で見てください。 – Aruna

答えて

0

これを処理するためにViewStateを使用して、以下のコードを更新しました。他の最も簡単なオプションは、SessionCacheまたはCookieに同じものを格納することです。

ViewStateに値を格納しますが、それはページにhiddenフィールド を作成し、ポストバック間でそれを維持するために、値を格納します。セッション、ビューステート、静的変数、HTTPキャッシュ、DBのストレージ、ファイルストレージ用

public int NextCount 
{ 
    get { return ViewState["NextCount"] != null ? (int)ViewState["NextCount"] : 0; } 
    set { ViewState["NextCount"] = value; } 
} 

protected void btnNext_Click1(object sender, EventArgs e) 
    { 
     NextCount = NextCount+7; 
     lblsum.Text = DateTime.Now.StartOfWeek(DayOfWeek.Monday).AddDays(NextCount).ToShortDateString(); 

    } 

protected void btnPrevious_Click(object sender, EventArgs e) 
     { 
      NextCount = NextCount - 7; 
      lblsum.Text = DateTime.Now.StartOfWeek(DayOfWeek.Monday).AddDays(NextCount).ToShortDateString(); 

     } 
+0

ありがとうございます! –

+0

@JonasWillanderあなたは大歓迎です:-) – Aruna

+0

私はいくつかの問題で私の質問を更新しました。 –

関連する問題