回答編集履歴

1 誤字

yuu341

yuu341 score 160

2016/08/19 16:27  投稿

IsEnabled = true の処理を外してみてください。
逆アセンブルしてみてみましたが、何やらセットするときにやってるようです。
逆コンパイルしてみてみましたが、何やらセットするときにやってるようです。
```C#
   public bool IsEnabled
   {
     get
     {
       return this._isEnabled;
     }
     set
     {
       object obj = this._instanceLock;
       bool lockTaken = false;
       try
       {
         Monitor.Enter(obj, ref lockTaken);
         if (!value && this._isEnabled)
         {
           this.Stop();
         }
         else
         {
           if (!value || this._isEnabled)
             return;
           this.Start();
         }
       }
       finally
       {
         if (lockTaken)
           Monitor.Exit(obj);
       }
     }
   }
```

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る