2012-02-29 12 views
0

WP7のGridViewコントロールを使用して、独立したストレージからレコードを表示しています。私はページのページのロードイベントでこれらの レコードを表示しています。 GridViewPageはもともと の4つの列を持っていますが、グリッドビュー (今回は8列)を示すGridViewPageに戻ると戻ってきます。Windows Phone 7 - 重複した列をGridViewに繰り返し表示する

次回はGridViewPageに戻って、12列の を表示していますが、対応するXAMLページに変更が表示されません。

しかし、gridViewのItemSourceに値を割り当てる前に、私はisostoreからレコードを1つのIList varialbeに保存しています。変更を加え、そのIList変数をGridViewのItemSourceに割り当てます。

プライベートボイドGridViewPage_load(オブジェクト送信者、RoutedEventArgs R) {System.Windows.Threading.DispatcherTimerのDT =新しいSystem.Windows.Threading.DispatcherTimer()。 dt.Interval = new TimeSpan(0、0、0、1,0); // 1秒 dt.Tick + =新しいEventHandler(dt_Tick); dt.Start(); }

空隙dt_Tick(オブジェクト送信者、のEventArgs電子) { のIList rawList = DBHelperMeeting.GetData()。 int count = rawList.Count;私はIListの変数-rawListに保存されている テーブルのレコードから、日付とSTART_TIMEを取得するためのロジックを書いた行を次と日時 変数 *を形成するのに { /*(私は++;;私は数える< I = 0をint型)用 / string endDate = Convert.ToDateTime(rawList.ElementAt(i).Date.ToString())。ToShortDateString(); endDate + = "" + rawList.ElementAt(i).End_Time;

  string startDate = Convert.ToDateTime(rawList.ElementAt(i).Date.ToString()).ToShortDateString(); 
      startDate+=" "+rawList.ElementAt(i).Start_Time; 


      if ((bool)rawList.ElementAt(i).Flag == true) 
      { 
       TimeSpan st = Convert.ToDateTime(startDate) - DateTime.Now; 
       //MessageBox.Show(st.ToString()); 
       TimeSpan et = Convert.ToDateTime(endDate) - DateTime.Now; 
       //MessageBox.Show(et.ToString()); 
       if (st.Seconds < 0) 
       { 
        if (et.Seconds < 0) 
        { 
         rawList.ElementAt(i).Flag = false; 
         rawList.ElementAt(i).Rem_Time = "Meeting Finished"; 
        } 
        else 
        { 
         rawList.ElementAt(i).Rem_Time = "Meeting Started"; 
        } 
       } 
       else if (st.Minutes > 0 && ((st.Hours * 60) + (st.Minutes)) < 16) 
       { 
        rawList.ElementAt(i).Rem_Time = st.Minutes.ToString() + " Min."; 
       } 

      } 
     } 
     GridView1.ItemsSource = rawList; 
     } 

実際に私が

+0

コードを表示して、説明しません。これは、ページが読み込まれるたびにグリッドに4つの列を追加する方法を示しています。 –

答えて

0

Loadedイベントは、すべてのページの構成要素であるすべての時間を発生します(Rem_Timeは会議の残り時間を示して)時間に応じて、各レコード(すなわち会議)のRem_Timeフィールドを更新したいですあなたが別のページから戻ってきた時でさえも。たとえば、コンストラクタに要素をロードする必要があります。

+0

私はそのコードをコンストラクタに入れてみましたが、同じ問題を抱えています。それでも、それは多くの列を追加する、私は列の行数を削除してグリッドビューの列数をチェックしてみましたが、列ヘッダーを保持している列の列データだけを削除するように部分的に働いています... – dnyan86

関連する問題