0

Как в WPF использовать таймер?

Получаю ошибку:

InvalidOperationException was not handled by user code.

The calling thread cannot access this object because a different thread owns it.

alt text

Angus123
  • 2,555
  • Возможно, следует преобразовать value в int. Насколько я помню, в C# всё что в формах - строка. – lamazavr Apr 30 '12 at 07:32
  • Сделал, но ошибка осталась. – Angus123 Apr 30 '12 at 07:40

2 Answers2

3

Попробуйте Dispatcher.Invoke. Так

Dispatcher.Invoke(
    DispatcherPriority.Normal,
    new Action(() => progressBar1.Value++)
);

Либо код, который приведен по ссылке в статье на MSDN.

stanislav
  • 34,518
  • 27
  • 98
  • 214
3

В WPF нужно пользоваться DispatcherTimer вместо Timer. Он будет работать в нужном потоке.

semenvx27
  • 1,916