30/09/2018, 18:53
Timer trong lập trình windows phone
Mình có code trong windows phone như thế này
private void btnrun_Click(object sender, RoutedEventArgs e)
{
// set thời gian;
t = 0;
Start_timer();
}
public void Start_timer()
{
timer2 = new DispatcherTimer();
timer2.Tick += timer_Tick2;
timer2.Interval = new TimeSpan(0, 0, 0, 0, 1000);
timer2.Start();
}
void timer_Tick2(object sender, object e)
{
t++;
txttime.Text = t.ToString();
}
khi chạy lần đầu thì hiện thị đúng từ 1,2,3,4… nhưng khi click lần 2 thì lại bài đầu từ 2, 4, 6… click lần 3 thì hiển thị 3, 6…
Có cách nào reset lại cho nó chạy từ 1,2,3,4 khi mình click vào button mỗi lần click không?
Mình cảm ơn!!!
Bài liên quan
Đó là sau mỗi lần bạn lại có thêm :
Mỗi lần bạn click thì Tick được add thêm hàm timer_Tick2 ( += mà) nên số lần hàm timer_Tick2 được gọi sẽ tăng lên.
Bạn nên kiểm tra Timer.Tick, nếu nó được gán rồi thì thôi không gán nữa. Và biến timer cũng chỉ có 1 cái thôi (không tạo mới timer trong hàm)
mình xử lý được cái đó rồi, cảm ơn đã góp ý
thêm vào dòng này trong Start_timer()