Frage zu C# Windowsform, Beginnerfrage

hauke1981

Erfahrenes Mitglied
Hi an alle,
ich versuche eigentlich was ganz einfaches zu machen. Ich will einfach die Systemzeit in einem Label anzeigen lassen. Jedoch zeigt es bei mir nicht wie gewünscht die Zeit an sondern nur den Text "label1". Bin noch ganz neu in C# deswegen vermutlich auch die etwas doofe Frage ;-)

Wie kann ich denn jetzt die Zeit anzeigen lassen? hab mal den Code eingefügt, ist ja nicht viel und vermutlich total falsch :-(
Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace WindowsApplication3
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        
         private void timer1_Tick(object sender, EventArgs e)
         {
            label1.Text = DateTime.Now.ToLongTimeString();
            Refresh();                       
         }            

        private void Form1_Load(object sender, EventArgs e)
        {

        }
    }

Grüße
 
Das du einen Timer verwenest ists hcon richtig.Nur der Befehl lautet etwas anders für die Uhrzeitabfrage. Meine Lösung wäre Uhrzeit + Datum :

Code:
 //Uhrzeit wird im label angezeigt und aktualisiert
            string Zeit = DateTime.Now.ToString("yyyy.dd.MM");
            label2.Text = Zeit;


            DateTime MyDate = DateTime.Now;
            label1.Text = MyDate.ToString("T");
 
Sorry aber irgendwie geht das nicht, muss ich auf der Oberfläche (Form1.cs (Entwurf)) noch was einstellen? Hab es so versucht wie du vorgeschlagen hast und den Code mal in das Time Tick Event geschrieben aber da passiert nichts. Bei mir zeigts da nichts an. Was mach ich den falsch.
 
Der obige Code ist soweit schon richtig:
Ich sehe nur nirgends eine Stelle, an der der Time gestartet wird.
Setz mal einen BreakPoint in timer1_tick und schau, ob diese Methode auch aufgerufen wird.

PS: Refresh solltest du besser nicht aufrufen.
Wenn es sein muss, nutz die Methode Application.DoEvents(). Refresh zeichnet die komplette Form neu (Flackern)
 
Zurück