2012-07-20 63 views
0

我已經嘗試在這個網站的方式來顯示日期和時間搜索。但是這裏的所有例子只顯示靜態日期和時間。有沒有辦法顯示正在運行的日期和時間,或者我應該說每秒遞增?它是否涉及每秒更新時間?顯示在一個文本框正在運行的日期和時間,在C#

+1

是WinForm的,WPF,網站? – Habib 2012-07-20 07:15:18

+0

winforms或asp.net? – nunespascal 2012-07-20 07:15:23

+0

是一個C#.net程序。 – maniac84 2012-07-20 07:18:17

回答

6

使用timer對象,並在tick事件顯示日期在的WinForms文本框中 使用

System.Windows.Forms.Timer tmr = null; 
private void StartTimer() 
{ 
    tmr = new System.Windows.Forms.Timer(); 
    tmr.Interval = 1000; 
    tmr.Tick += new EventHandler(tmr_Tick); 
    tmr.Enabled = true; 
} 

void tmr_Tick(object sender, EventArgs e) 
{ 
    myTextBox.Text = DateTime.Now.ToString(); 
} 
+1

是在同一個線程中的tmr_Tick? – 2012-07-20 07:18:23

+0

我不認爲DateTime可以直接分配給'TextBox','myTextBox.Text = DateTime.Now;'註定要失敗 – V4Vendetta 2012-07-20 07:19:16

+0

是的,除非他使用他自己創建的線程 – JohnnBlade 2012-07-20 07:19:18

1

您可以將Timer添加到您的形式。將其設置爲每秒觸發一次。在計時器的事件處理程序中,使用當前時間更新文本框。

1

你就在你的第二個選項。

這是關於使用計時器和更新TextBox與當前時間。

0

使用以1秒的間隔的定時器。如果你的應用程序是winforms,使用windows.forms命名空間http://msdn.microsoft.com/en-us/library/system.windows.forms.timer.aspx的計時器,它運行在與gui相同的線程中,所以更新gui是安全的。您也可以使用system.threading命名空間中的timer,但在這種情況下,您應該通過調用invoke方法http://msdn.microsoft.com/en-us/library/ms171728.aspx以線程安全的方式更新控件。如果你的應用程序是網頁,使用JavaScript來代替

+0

不,它不是一個網絡應用程序。這只是一個C#.net程序。 – maniac84 2012-07-20 07:32:53