Ошибка потока в WPF (им владеет другой поток.)
Привет,
Я пытаюсь получить доступ к текстовому полю из другого класса в WPF. Метод был инициирован потоком. И когда я пытаюсь установить значение текстового поля, он получает ошибку
Необработанное исключение типа ' System.InvalidOperationException ' произошло в WindowsBase.dll
Дополнительная информация: вызывающий поток не может получить доступ к этому объекту, поскольку он принадлежит другому потоку.
вызываемый метод:
Thread tScan = new Thread(MyClass.Start);
метод Statusprint вызывается из MyClass.Метод Start (), например,
public static void StatusPrint() { Instance.txtReport.Text = "value will set here."; }
Поскольку я новичок в WPF, поэтому мне нужна ваша помощь, чтобы избавиться от этого.
Что я уже пробовал:
Я пытался поступить именно так.
public static void StatusPrint() { System.Windows.Threading.Dispatcher.CurrentDispatcher.BeginInvoke(new ThreadStart(() => Instance.txtReport.Text = "value will set here.")); }
здесь
Instance
является ли статическая переменная, объявленная в классе MainWindow, инициированной this
.здесь я не получаю никакой ошибки во время выполнения, но она просто не выполняется.