简体   繁体   中英

How to set timer in an event handler?

Am currently building an app and I want the timer to start only when I click a particular button.

So is there anyway to start timer once a button is clicked? (I don't want the timer to start as soon as the page loads)

Check this post .

//Inside Page Load 
System.Windows.Threading.DispatcherTimer dt = new System.Windows.Threading.DispatcherTimer();
dt.Interval = new TimeSpan(0, 0, 0, 0, 500); // 500 Milliseconds
dt.Tick += new EventHandler(dt_Tick);

Tick Event Handler for your timer

void dt_Tick(object sender, EventArgs e)
{
    // Do Stuff here.
}

Now on your button click event handler you will do

dt.Start();

Hope this helps.

By default the Enabled property of timer is false. Hence it will not start on load.
You can have a button click event which starts the timer on clicking it.

    private void btnStartTimer_Click(object sender, EventArgs e)
    {
        timer1.Start();
    }

Add a Timer Tick event which confirms that the timer has started.

    private void timer1_Tick(object sender, EventArgs e)
    {
        MessageBox.Show("Timer Tick");
    }

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM