我正在使用BackgroundWorker
,在BackgroundWorker.DoWork
内有一个if条件,但是它给出了跨线程操作错误。
我尝试了以下代码,但是它说对象引用未设置为对象实例。谁能告诉我如何在委托中使用Equals
方法?
((bool)(scrapeType.Invoke(new Action(() => { scrapeType.Text.Equals("Scrape URLS"); }))))
scrapeType
是TextBox
。
答案 0 :(得分:0)
您必须使用Dispatcher
类型。这是一个示例:
Dispatcher.Invoke(()=> if(txtBox.Text.Equals("abc")) doThis(); else doThat();)
您没有提到正在使用什么框架,所以我认为它是WPF。