2014-04-09 83 views
0

我有一個應用程序,每隔一分鐘就通過Timer執行一些任務,我想添加選項,以便在應用程序運行過程中使用用戶輸入更改此任務。 如果例如我的Timer.Tick設置爲1分鐘,並更改爲1小時,Timer.Tick屬性將更新我需要重新啓動我的應用程序?是否有可能在運行中更改Timer Tick

+1

你試過了嗎? – Sayse

+0

timer.tick = 1小時?那有效,如果你只是試試它會更快,tick是在幾毫秒內做轉換 –

回答

1

我剛剛在LINQPad中運行了這個功能,並且在我更改了間隔後每隔一秒就會「打勾」,這意味着它看起來像是立刻改變了interval屬性。

void Main() 
{ 
    var timer = new System.Windows.Forms.Timer(); 
    timer.Tick += Timer_Tick; 
    timer.Interval = 50000; 
    timer.Start(); 

    System.Threading.Thread.Sleep(1000); 
    timer.Interval = 1000; 
} 

private void Timer_Tick(object sender, EventArgs e) 
{ 
    Console.WriteLine("Tick"); 
} 

我假設你是根據你引用Tick事件中使用System.Windows.Forms.Timer。我也使用System.Threading.Timer進行了相同的測試,看到了相同的結果。

相關問題