2017-05-29 1 views
-2
private void timer_click1(object sender, RoutedEventArgs e) 
{ 
    seconds = seconds - 1; 
    if (seconds == -1) 
    { 
     minutes = minutes - 1; 
     seconds = 59; 
    } 
    if (minutes == -1) 
    { 
     hours = hours - 1; 
     minutes = 59; 
    } 
    if (hours == 0 && minutes == 0 && seconds == 0) 
    { 
     timer.Stop(); 
    } 
    string hhr = Convert.ToString(hours); 
    string minns = Convert.ToString(minutes); 
    string seccs = Convert.ToString(seconds); 
} 

Ich versuche, einen Countdown-Timer zu erstellen. Ich stecke mit hhr, minns und secs fest, weil ich den Countdown in einem Label nicht mehr anzeigen muss. Wie kann ich diese drei Texte als hrr: minns: secs weitergeben?wie zeit von drei textbox in nur einem label anzeigen?

+0

Diese [Antwort] (https://stackoverflow.com/a/5619823/5513005) könnte Ihnen helfen –

+0

Sie ** String-Format verwenden ** oder verwenden ** ** System.TimeSpan –

+0

var result = string.Format ("{0} {1} {2}", Stunden, Minuten, s Sekunden); – live2

Antwort

1

Es gibt wahrscheinlich bessere Möglichkeiten, um die verbleibende Zeit zu bekommen, aber hier ist, wie Sie die string.Format Methode verwenden, um alle drei Komponenten in einer einzigen string anzuzeigen:

private void timer_click1(object sender, RoutedEventArgs e) 
{ 
    seconds = seconds - 1; 
    if (seconds == -1) 
    { 
     minutes = minutes - 1; 
     seconds = 59; 
    } 
    if (minutes == -1) 
    { 
     hours = hours - 1; 
     minutes = 59; 
    } 
    if (hours == 0 && minutes == 0 && seconds == 0) 
    { 
     timer.Stop(); 
    } 
    string hhr = Convert.ToString(hours); 
    string minns = Convert.ToString(minutes); 
    string seccs = Convert.ToString(seconds); 

    string s = string.Format("{0}:{1}:{2}", hhr, minns, seccs); 
    lbl.Text = s; 
} 

In C# 6 + ist es sogar eaiser:

string s = $"{hhr}:{minns}:{seccs}"; 
+0

Ich denke, Ihre Lösung ist perfekt, aber das Problem ist mit "RoutedEventArgs". Es sollte EventArgs sein. und der Rest ist der gleiche – moalbait

+0

EventArgs ist Windows Forms. RoutedEventArgs ist WPF und du hast die Frage WPF markiert. – mm8

Verwandte Themen