0
我是Silverlight的新手。需要在Silverlight中創建一個5分鐘的計時器
最近我下載了,從現在下silvoicerecordupload.codeplex.com/
我想要做的是網頁記錄的音頻解決方案,該記錄應在5分鐘後停止。
我發現像一些文章:
我使用Dispatcher類試過,只是有start()和stop()方法, 但我不能保持跟蹤錄製時間。
請幫我解決這個問題。
感謝, 薩欽
我是Silverlight的新手。需要在Silverlight中創建一個5分鐘的計時器
最近我下載了,從現在下silvoicerecordupload.codeplex.com/
我想要做的是網頁記錄的音頻解決方案,該記錄應在5分鐘後停止。
我發現像一些文章:
我使用Dispatcher類試過,只是有start()和stop()方法, 但我不能保持跟蹤錄製時間。
請幫我解決這個問題。
感謝, 薩欽
我沒有檢查的CodePlex項目,但我假設你有啓動,並通過兩種方法停止錄製的手段。一旦recordingTimeInMilis
指定的時間用完,計時器將立即調用StopRecording()
方法。
public class TimedRecorder
{
private const int recordingTimeInMilis = 5 * 60 * 1000;
private Timer m_timer;
public void StartRecording()
{
m_recorder.Start();
m_timer = new Timer(
StopRecording, null, recordingTimeInMilis, Timeout.Infinite);
}
public void StopRecording()
{
m_recorder.Stop();
m_timer.Dispose();
m_timer = null;
}
}
它給出了錯誤的:爲了獲得最佳重載方法匹配「System.Threading.Timer.Timer(System.Threading.TimerCallback,對象,INT,INT)」有一些無效參數 – 2014-10-07 03:51:14
是,回調需求接受一個對象作爲輸入參數。你可以把它寫成lambda,就像這樣:'... new Timer(param => StopRecording,null,recordingTimeInMilis,Timeout.Infinite)...' – Martin 2014-10-07 07:49:10