запускать таймер из другого потока в C #

Привет, я столкнулся с проблемой, связанной с таймером. надеюсь, что кто-нибудь может помочь ..

  1. У меня есть форма окна, содержащая кнопку
  2. , когда я нажимаю на эту кнопку, я запускаю параметризованный поток
Thread thread1 = new Thread(new ParameterizedThreadStart( execute2));
thread1.Start(externalFileParams);
  1. код внутри потока выполняется очень хорошо
  2. в последней строке В этом потоке я запускаю таймер

.

public void execute2(Object ob)
{
    if (ob is ExternalFileParams)
    {
        if (boolean_variable== true)
          executeMyMethod();//this also executes very well if condition is true
        else
        {
            timer1.enabled = true;
            timer1.start();
            }
        }
    }
}

5, но событие тика таймера не запускается

Я работаю над платформой VS2008 3.5. Я перетащил таймер из панели инструментов и установил для его Interval значение 300, также попытался установить Enabled true / false метод timer1_Tick (Object sender, EventArgs e) , но он не запущен

, может ли кто-нибудь подсказать, что я делаю неправильно?

13
задан ebb 5 June 2013 в 18:02
поделиться