WPF计时器使用方法以及计时器操作text控件

//这个是引用Timers 并非是线程的timer; 计时器
System.Timers.Timer timer; 

//这个是WPF主程序的构造函数,在这里调用计时器的定义
        public MainWindow()
        {
            InitializeComponent();
            InitTimer();
        }
        int i = 1;

private void InitTimer()
        {
            //设置时间间隔(毫秒为单位)
            int interval = 200;
            timer = new System.Timers.Timer(interval);

            //设置是执行一次(false)还是一直执行(true)
            timer.AutoReset = true;

            //设置是否执行system.timer.timer.Elapsed事件
            timer.Enabled = true;

            //绑定Elapsed事件
            timer.Elapsed += new System.Timers.ElapsedEventHandler(Timer_Elapsed);
        }

 private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            timer.Start();
        }

//计时器调用的事件
        private void Timer_Elapsed(object sender, ElapsedEventArgs e)
        {
            
            AppendTest(i++.ToString(), rh1);
        }

//计时器里面无法直接访问控件,所以这里需要重新定义一下
        void AppendTest(string cmd, RichTextBox bx)
        {
            //WPF可以使用Dispatcher模型修改
            this.Dispatcher.Invoke(new Action(() =>
           {
               bx.AppendText(cmd);
               bx.AppendText("\n");

               bx.ScrollToEnd();//定义到最后一行

           }
                ));
        }

你可能感兴趣的:(wpf,microsoft,c#)