본문 바로가기

Programing (프로그래밍)/WPF & C# (C Sharp)

WPF & C# - DispatcherTimer ( ticks / 타이머 / 초 / 반복 / Repeat / TimeSpan )

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
반응형