Readdy Write  
0,00 €
Your View Money
Views: Count
Self 20% 0
Your Content 60% 0

Users by Links 0
u1*(Content+Views) 10% 0
Follow-Follower 0
s2*(Income) 5% 0

Count
Followers 0
Login Register as User

Wie erstellt man einen kleinen Timer in UWP

06.07.2018 (👁5583)

Wie erstellt man einen kleinen Timer, welcher von 10 auf 0 zÀhlt und dann einen Vorgang startet

Lösung:

In Windows 10 UWP verwendet man hierzu den

DispatcherTimer Timer = new DispatcherTimer();

Zu Beginn stellt man den Timer auf die Zeiteinheit ein, in welcher er zÀhlen soll.

Hier soll pro Sekunde ein Timer-Event ausgelöst werden

            Timer.Interval = new TimeSpan(0, 0, 1);

            Timer.Start();

 

Dann erstellt man einen Event, welcher ausgelöst wird beim Timer-click

Timer.Tick += Timer_Tick;

Und in den Tick-Event des Timers schreibt man dann den ZĂ€hler oder andere Logik

        private void Timer_Tick(object sender, object e)

        {

            //--------< Timer_Tick() >--------

            //*decrease Counter. Start MainRun at 0

            //< decrease > 

            CountDown_Seconds = CountDown_Seconds - 1;

            //</ decrease >

            fx_Log(CountDown_Seconds.ToString()); //show text

 

            //-< run_on_0 >-

            if (CountDown_Seconds == 0)

            {

                Timer.Stop();  //*stop timer

                fx_Run_Main(); //*run main

            }

            //-</ run_on_0 >-

            //--------</ Timer_Tick() >--------

        }

Timer, Counter, Autostart, Autocounter

UWP, Windows 10

Beispiel Code in C#

using System;

    public sealed partial class MainPage : Page

    {

        DispatcherTimer Timer = new DispatcherTimer();

        public int CountDown_Seconds = 10;

 

        #region Page

        //--------------------< region: Page >---------------------

        public MainPage()

        {

            this.InitializeComponent();

            Current_Mainpage = this;

 

            optStop.IsChecked = false;

            //< start Timer >

            Timer.Tick += Timer_Tick;

            Timer.Interval = new TimeSpan(0, 0, 1);

            Timer.Start();

            //</ start Timer >

        }

       //--------------------</ region: Page >---------------------

        #endregion /Page

 

 

 

        #region Controls

        //--------------------< region: Controls >---------------------

        private void optStop_Click(object sender, RoutedEventArgs e)

        {

            Timer.Stop();

        }

        private void Timer_Tick(object sender, object e)

        {

            //--------< Timer_Tick() >--------

            //*decrease Counter. Start MainRun at 0

            //< decrease > 

            CountDown_Seconds = CountDown_Seconds - 1;

            //</ decrease >

            fx_Log(CountDown_Seconds.ToString());

 

            //-< run_on_0 >-

            if (CountDown_Seconds == 0)

            {

                Timer.Stop();  //*stop timer

                fx_Run_Main(); //*run main

            }

            //-</ run_on_0 >-

            //--------</ Timer_Tick() >--------

        }

        //--------------------</ region: Controls >---------------------

        #endregion /Controls

Countdown-Timer: bei 0 beginnt die Hauptroutine