В mainwindow.xaml.cs, в строке 240, измените this.Dispatcher.BeginInvoke
на this.Dispatcher.Invoke
.BeginInvoke
работает в асинхронном вуду, который я никогда не смог заставить работать должным образом.Вам будет лучше с простым старым Invoke
, если у вас нет конкретной причины работать асинхронно, что я редко делаю.
Измените ваш MainWindow
класс так, чтобы он расширял Window
.
Не используйте CheckAccess()
.
Измените другой вызов BeginInvoke
так, чтобы метод вызывался непосредственно из того же потока, что и окно, или использовал Invoke
.Я думаю, что это может быть уже в той же теме, что и окно.Я не присматривался.
Есть много других небольших изменений, которые вам нужно сделать;Вам нужно будет начать все заново.Вы должны изучить WPF более подробно, прежде чем пытаться что-то подобное.