private int countSecond=300; //记录秒数 
  private void UserControl_Loaded(object sender, RoutedEventArgs e) 
  { 
    private DispatcherTimer disTimer = new DispatcherTimer(); 
    disTimer.Interval = new TimeSpan(0, 0, 0, 1); //参数分别为:天,小时,分,秒。此方法有重载,可根据实际情况调用。 
    disTimer.Tick += new EventHandler(disTimer_Tick); //每一秒执行的方法 
    disTimer.Start(); 
  } 
  void disTimer_Tick(object sender, EventArgs e) 
  { 
    if(countSecond==0) 
    { 
      MessageBox.Show("结束"); 
    } 
    else 
    { 
      //判断lblSecond是否处于UI线程上 
      if (lblSecond.Dispatcher.CheckAccess()) 
      { 
        lblSecond.Content=countSecnd.ToString(); 
      } 
      else 
      { 
        lblSecond.Dispatcher.BeginInvoke(DispatcherPriority.Normal,(Action)(() =>{ 
          lblSecond.Content=countSecond.ToString(); 
        }));   
      } 
      countSecond--; 
    } 
  } 
您可能感兴趣的文章:
