在WinForm窗体中实现倒计时器可以通过使用System.Threading.Timer
类来实现。以下是一个简单的示例代码:
using System;
using System.Windows.Forms;
using System.Threading;
public partial class Form1 : Form
{
private int countDown = 10;
private System.Threading.Timer timer;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
timer = new System.Threading.Timer(OnTimerCallback, null, 0, 1000);
}
private void OnTimerCallback(object state)
{
countDown--;
if (countDown <= 0)
{
timer.Dispose();
MessageBox.Show("倒计时结束!");
return;
}
// 更新UI显示倒计时
this.Invoke((MethodInvoker)delegate
{
label1.Text = countDown.ToString();
});
}
}
在上面的代码中,首先在窗体加载时创建一个System.Threading.Timer
对象,并指定回调方法OnTimerCallback
。在回调方法中,每秒更新倒计时并更新UI显示。当倒计时结束时弹出消息框提示倒计时结束。