2012-04-11 97 views
-1

我必須2下拉列表,我想用它們的值填充它們的值,時間從1到24。然後我想計算兩個選定值之間的差異。如果我在第一個下拉列表中選擇,我們假設小時值爲12,第二個值爲16,那麼差異將爲4.如何在C中使用小時填充下拉列表#

我該如何在c#中實現這一點?

我正在開發一個編碼在C#中的asp.net web應用程序。

下面是我如何填充我的下拉列表中的代碼:

DateTime Date = DateTime.Today; 
DateTime Time = DateTime.Now; 
ListItem item1 = new ListItem(Time.ToShortTimeString(), 
           Time.ToShortTimeString()); 

for (int i = 0; i <= 48; i++) 
{ 
    ListItem item2 = new ListItem(Date.ToShortTimeString(), 
           Date.ToShortTimeString()); 

    droplist.Items.Add(item2); 


    if (Date.CompareTo(Time) < 0 && Date.AddMinutes(30).CompareTo(Time) > 0) 
    droplist.Items.Add(item1); 

    Date = Date.AddMinutes(60); 
} 

我怎樣才能賦值到我的下拉列表中,值作爲時間?

+1

這是一個家庭作業嗎? – Khan 2012-04-11 12:35:25

+0

您想在哪裏顯示兩個下拉值之間的差異? – Khan 2012-04-11 12:36:15

+0

我有點困惑 - 你說你想要1到24,但代碼似乎暗示你想要當前小時+ 24。這是什麼? – asawyer 2012-04-11 12:36:34

回答

3

而不是將日期/時間字符串添加到下拉列表中,您可以添加DateTime值本身。下拉菜單通過呼叫ToString()顯示其成員。這裏的缺點:你不能使用其他時間格式,如ToShortTimeString()

另一種方法是在計算之前使用DateTime.TryParse方法進行轉換。