Головна‎ > ‎C#‎ > ‎

Таймер

Без доступом до компонентів форми
using System.Threading;

void Main(string[] args){
      Timer t = new Timer(F1, null, 0, 2000);   // 0 - затримка до старту, 2000 - період
      Console.ReadKey();
}

static void F1(Object o) {
      Console.WriteLine("Час: " + DateTime.Now);
      GC.Collect();    // зібрати сміття
}



Зупинити таймер

t.Dispose() - на завжди
t.Change(Timeout.Infinite , Timeout.Infinite) - можна знову запустити
Object o - об'єкт таймера, аби ни можна було керувати в F1()


Інший варіант

TimerCallback callback = new TimerCallback(F1);
Timer timer = new Timer(callback);
timer.Change(2000, 500);   // затримка, як часто




WPF з доступом до компонентів форми
using System.Threading;


     DispatcherTimer timer = new DispatcherTimer();
     timer.Interval = TimeSpan.FromSeconds(1);        // щосекунди; new TimeSpan(0, 0, 1);
     timer.Tick += F1;
     timer.Start();



int b = 1;

void F1(object sender, EventArgs e)
{
     tb1.Text = b.ToString();
     b++;
}