2014-02-24 66 views
3

我有兩個文本框允許用戶以這種格式(h:mm)輸入開始時間和結束時間。我希望它能夠在標籤中返回差異。例如,如果用戶在第一個文本框中輸入1:35,在第二個文本框中輸入3:30,然後按'計算'按鈕,則它將返回時間1:55。如何計算兩次差異?

此任何想法或資源?我只想計算兩個文本框之間的小時和分鐘差異。日期和秒根本不重要。

+0

@皮埃爾 - LucPineault,不是一個真正的副本,以鏈接的問題,輸入值是不同的*(與AM,PM)*並且需要'DateTime'解析。 – Habib

+0

@Habib底層的問題是一樣的;有2個時間值,這些值需要被解析然後減去。這個問題只是另一個簡單的例子。 –

回答

7

Parse這兩個文本框的值都爲TimeSpan,然後您可以使用-取其差異。

TimeSpan ts1 = TimeSpan.Parse(textBox1.Text); //"1:35" 
TimeSpan ts2 = TimeSpan.Parse(textBox2.Text); //"3:30" 

label.Text = (ts2 - ts1).ToString();   //"1:55:00" 
+0

TimeSpan!非常感謝您的回答! – Michael

+0

@ user2112439,歡迎您 – Habib

+0

@Habib:是否可以像這樣得到結果:textbox1.Text = 4/26/2015 5:39:09 AM and textBox2.Text = 4/26/2015 5:45:上午24點我想要得到結果6.(即,我想計算時間之間的差異(5:39:09 - 5:45:24)) – Reshma

0

如果你投的輸入爲DateTime對象,你可以計算出絕對時間他們之間像這樣:

DateTime.Parse(startDate).Subtract(DateTime.Parse(endDate)).Duration().ToString("hh:mm");