2012-04-10 6 views
0

フォームがあり、フォームには選択した内容に応じてユーザーコントロールが追加および削除されています。 2つのラベルを持つフォームがあり、ラベル情報はユーザーコントロールが読み込まれたときに変更されるはずですが変更されることはなく、同じ値が保持されます。私はそれを行うことができますどのように2回目にユーザーコントロールにアクセスしたときにフォームが読み込まれない理由

private void SummaryScreen_OnLoad(object sender, EventArgs e) 
{ 
    lblSavingsBalance.Text = Global.Instance.Accounts[1].AccountBalace.ToString(); 
    lblCheckingBalance.Text = Global.Instance.Accounts[0].AccountBalace.ToString(); 
} 

...それだけでそこに移動したが、再びロードすることはありません他のすべての時間、今、私は...ユーザーコントロールの負荷にブレークポイントを追加し、それが一度だけヒットしました私はこのユーザーコントロールを呼び出すとき、それは常にロードされますか?

+0

あなたはUserControlのOnLoadについて話していますか? (UserControlはSummaryScreenと呼ばれていますか?) –

+0

はいユーザーコントロールが呼び出されています。SummaryScreen - SummaryScreenのonloadが1回だけヒットします。 – user710502

答えて

2

UserControl.Loadをのみ、それが建設した後、フォームに追加された最初の時間と呼ばれています。

あなたはどちらかにする必要があります

  • するたびに(呼び出されるので、強制的にロード)
  • は(初期化など)、ユーザーコントロールに新しいメソッドを追加し、
  • を追加した後、それを呼び出してコントロールを再作成します
0

おそらくそれは 使用キャッシングされています -

Response.Cache.SetCacheability(HttpCacheability.NoCache); 
     Response.ExpiresAbsolute = DateTime.Now.AddMonths(-1); 
あなたのロード機能で

+0

これはWebアプリケーションコードのようです。私は窓の形になっています – user710502

関連する問題