728x90
반응형
WPF & C# - DispatcherTimer ( ticks / 타이머 / 초 / 반복 / Repeat / TimeSpan ) |
DispatcherTimer ( ticks / 타이머 / 초 )
DispatcherTimer
using System.Windows.Threading;
// 짧게
1 2 3 4 5 6 7 8 | DispatcherTimer timer = new DispatcherTimer(); timer.Interval = TimeSpan.FromTicks(10000000); // ticks 10000000 = 1초 timer.Tick += (s, a) => { MessageBox.Show("Completed"); timer.Stop(); }; timer.Start(); | cs |
// 기본형
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | public MainWindow() { InitializeComponent(); DispatcherTimer timer = new DispatcherTimer(); timer.Interval = TimeSpan.FromTicks(10000000); // ticks 10000000 = 1초 timer.Tick += new EventHandler(timer_Tick); timer.Start(); } private void timer_Tick(object sender, EventArgs e) { lblTime.Content = DateTime.Now.ToString(); } | cs |
시간 단위가 헷갈릴 수 있어서 메모해 둡니다.
타이머 사용 시, 또는 시간 관련하여 많이 사용 됩니다.
일회성인경우
private void Window_MouseLeave(object sender, System.Windows.Input.MouseEventArgs e)
{
timer.Tick += new EventHandler(timer_Tick);
timer.Interval = TimeSpan.FromTicks(30000000); // ticks 10000000 = 1초
if (timer.IsEnabled) timer.Stop();
timer.Start();
}
DispatcherTimer timer = new DispatcherTimer();
private void timer_Tick(object sender, EventArgs e)
{
if (!IsMouseOver)
{
this.ResizeMode = ResizeMode.CanResize;
}
timer.Stop();
}
728x90
반응형