Startseite : Beiträge : programmierung : C# Timer in WPF erzeugen

Dienstag, 28. Mai 2013

In WPF gibt es keinen Timer oder eine Timer Klasse.
Aber die DispatchTimer Klasse kann benutzt werden einen Timer zu erzeugen.

Als Erstes den Namspace angeben.
	using System.Windows.Threading;

Einen neuen Zeitgeber erzeugen und konfigurieren.
	//  DispatcherTimer setup
		dispatcherTimer = new System.Windows.Threading.DispatcherTimer();

	//Tick EventHandler
		dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick);

	//Tick interval einstellen und Timer starten.
		dispatcherTimer.Interval = new TimeSpan(0,0,1);
		dispatcherTimer.Start();
Danach den TickHandler erstellen. Hierbei wird ein Label benutzt und diesem die aktuellen Sekunden übergeben.
	//  System.Windows.Threading.DispatcherTimer.Tick handler
	//
	//  Updates the current seconds display and calls
	//  InvalidateRequerySuggested on the CommandManager to force 
	//  the Command to raise the CanExecuteChanged event.
	private void dispatcherTimer_Tick(object sender, EventArgs e)
	{
	    // Updating the Label which displays the current second
	    lblSeconds.Content = DateTime.Now.Second;
	
	    // Forcing the CommandManager to raise the RequerySuggested event
	    CommandManager.InvalidateRequerySuggested();
	}
Eine andere Möglichkeit ist ein Label zu benutzen und in diesem einfach einen Counter hochzählen zu lassen.
	int a = 1;

	private void dispatcherTimer_Tick(object sender, EventArgs e)
	{
            //Get content from Label Timer and add 1
            lblTimer.Content = a;
            a = ++a;
            CommandManager.InvalidateRequerySuggested();
        }
link: http://msdn.microsoft.com/de-de/library/system.windows.threading.dispatchertimer.aspx

link: http://www.c-sharpcorner.com/uploadfile/mahesh/timer-in-wpf/

timer tick c# wpf

Tags: C# Timer, WPF
Kategorie: programmierung

    anzeigen