将两个对象传递给TimerCallback

时间:2012-04-09 23:33:46

标签: windows-phone-7

我需要能够影响TimerCallback中的多个Textblock元素。目前,我有这个:

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

然而,在tc中,我想做以下事情:

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

我还没弄明白如何将多个对象传递给我的TimerCallback。无论何时我尝试在TimerCallback中设置TextBlock,我都会收到错误:

System.UnauthorizedAccessException

我尝试在一个对象数组中进行编码但是没有用。

1 个答案:

答案 0 :(得分: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
        }