2012-04-09 25 views
0

TimerCallback内の複数のTextblock要素に影響を与える必要があります。2つのオブジェクトをTimerCallbackに渡す

t = new Timer(tc, myLabel, 0, 1000); 

しかし、TCで、私は次の操作を実行したいと思います:

myLabel.Text = "ABC"; 
myLabel2.Text = "DEF"; 

私は複数のオブジェクトを渡す方法を考え出したていない現時点では、私はこれを持っています私のTimerCallback。いつでも私は私のTimerCallback内部のTextBlockを設定しようとすると、私はエラーを取得する:

System.UnauthorizedAccessException 

私はオブジェクトの配列でコーディングしてみましたが、それは動作しませんでした。

答えて

2

DispatchTimerを使用する必要があります。あなたはそれが別々の糸であるので、それをしなければなりません。

 private void InitializeTimers() 
      { 
       DispatcherTimer tmr = new DispatcherTimer(); 
       tmr.Interval = TimeSpan.FromSeconds(1); 
       tmr.Tick += OnTimerTick; 
       tmr.Start(); 
      } 

    private void OnTimerTick(object sender, EventArgs args) 
     { 
       //do whatever you want 
     } 
+0

ありがとうございます!これは完全に意図どおりに動作します。 – TekiusFanatikus

関連する問題