- namespace csdemo.wpf.controls.Timer
- {
- /// <summary>
- /// TimerWindow.xaml 的交互逻辑
- /// </summary>
- public partial class TimerWindow : Window
- {
- public TimerWindow()
- {
- InitializeComponent();
- }
- private void btnStart_Click(object sender, RoutedEventArgs e)
- {
- aTimer.Start();
- }
- System.Timers.Timer aTimer = new System.Timers.Timer();
- static int elapsedTimes;
- private void Window_Loaded(object sender, RoutedEventArgs e)
- {
- aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);
- aTimer.Interval = 2000; // 1秒 = 1000毫秒
- }
- /// <summary>
- /// Timer的Elapsed事件处理程序
- /// </summary>
- /// <param name="source"></param>
- /// <param name="e"></param>
- private static void OnTimedEvent(object source, ElapsedEventArgs e)
- {
- MessageBox.Show((++elapsedTimes).ToString(), "Timer测试 - http://www.cnblogs.com/sitemanager/");
- }
- private void btnStop_Click(object sender, RoutedEventArgs e)
- {
- aTimer.Stop();
- MessageBox.Show("Timer已停止,之前共触发次" + (elapsedTimes).ToString() + "事件", "Timer测试 - http://www.cnblogs.com/sitemanager/");
- elapsedTimes = 0;
- }
- private void btnClose_Click(object sender, RoutedEventArgs e)
- {
- aTimer.Dispose(); // 清理aTimer使用的内存
- MessageBox.Show("欢迎使用『峻之岭峰』的WPF控件Demo,您可以在我的博客中看到最新发表的有关编程技术的个人总结。 \n 博客地址: http://www.cnblogs.com/sitemanager/ \n\n如果您是在点击停止之前点击此按钮,将会造成无法停止Timer!\n此时您可以返回您的开发工具停止调试项目。\n或直接在资源管理器中终止进程。\n\n\n 在使用本Demo的同时,由于个人的开发环境不同,所以请不要简单的拷贝代码", "『峻之岭峰』的WPF控件Demo - http://www.cnblogs.com/sitemanager/");
- this.Close();
- }
- }
- }
复制代码
|