2017-03-27 22 views
0

timespan(時、分、秒)でtimerをコードに追加しようとしています。しかし、私は次のエラーを持って保管する理由を理解することはできません。は暗黙的に 'system.timespan'タイプをdoubleに変換できません

Cannot implicitly convert type 'System.timespan' to double.

はここに私のコードです。

public static void Main(string[] args) 
{ 
    System.Timers.Timer MyTimer = new System.Timers.Timer(); 
    MyTimer.Elapsed += new ElapsedEventHandler(onTimedEvent); 
    MyTimer.Interval = new TimeSpan(0,0,5000); 
    MyTimer.Enabled = true; 
} 

次のように私は単一の値にMytimer間隔を設定する場合は、上記の問題なく実行されます。

Mytimer.Interval = 5000; 

答えて

7

あなたがタイプと一致しなければならないとIntervalはミリ秒(double)とないTimeSpanです。だから、行うことができます。

MyTimer.Interval = new TimeSpan(0,0,5000).TotalMilliseconds; 

それとも

MyTimer.Interval = 5000; 
// assuming you meant 5000 milliseconds above and not 5000 seconds 
// if not multiple by 1000 for seconds, again by 60 for minutes, again by 60 for hours, etc 
+1

感謝を指定することができるような方法で定義された間隔のためのタイマーでプロパティ。 – JNW

0

間隔をダブルませんタイムスパンです。

0

我々はdouble値にそれが今で正常に動作@Igor

[TimersDescriptionAttribute("TimerInterval")] 
[SettingsBindableAttribute(true)] 
public double Interval { get; set; } 
関連する問題