Laufzeit ermitteln

werner_sg

Erfahrenes Mitglied
Hallo ich versuche gerade die Laufzeit eines kleinen Programms zu berechnen

die Label haben alle 00:00 als text vorgegeben welcher durch Startzeit und Aktuellezeit ersetzt werden

C#:
  {
            InitializeComponent();

            // Program Startzeit Label1
            Startzeit.Text = DateTime.Now.ToString("HH:mm");

            // Timer für laufende Zeit label2
            Timer timer = new Timer();
            timer.Enabled = true;
            timer.Interval = 500;
            timer.Tick += new EventHandler(tick);

            // Laufzeit Berechnung
            var sz = TimeSpan.Parse(Startzeit.Text);
            var iz = DateTime.Parse(aktuelleZeit.Text);

            var az = iz - sz;
            Arbeitszeit.Text = az.ToString("HH:mm");
        }

        private void tick(object sender, EventArgs e)
        {
            aktuelleZeit.Text = DateTime.Now.ToString("HH:mm");
            
        }

Als Ergebnis erhalte ich jedoch lediglich das Ergebnis wenn ich die Startzeit von 00:00 abziehe

Wenn die Startzeit also als Beispiel auf 23:45 steht erhalte ich als Ausgabe 00:15

Sieht einer meinen Fehler?

Und wie aktualisiere ich das ganze laufend?

in einem private void wie mit der aktuellen Zeit erhalte ich einen Fehler, das az nicht im aktuellen Kontext vorhanden ist
 

werner_sg

Erfahrenes Mitglied
Fehler und Lösung gefunden

habe die ganze Laufzeitberechnung in ein private gepackt und einen zweiten Timer angelegt

und alles läuft ;-)