首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WPF组件InvalidOperationException

WPF组件InvalidOperationException
EN

Stack Overflow用户
提问于 2018-02-02 19:09:54
回答 1查看 130关注 0票数 0

我很难获得WPF TextBox的文本值。

文本框上有许多相同的异常列表(InvalidOperationException)。

为什么会出现这些异常?要删除这些异常,我应该做什么?

这些是代码片段。

代码语言:javascript
复制
public partial class MainPage : Page, 
                                Autodesk.Revit.UI.IDockablePaneProvider    
{
       ...
     private static BackgroundWorker workerTimers = new BackgroundWorker();

}

public sync void LoadPage()
{
       ...
     workerTimers.DoWork += workerTimers_DoWork;
       ...
}

async void workerTimers_DoWork(object sender, DoWorkEventArgs e)
{
       ...
    SearchText = UserSearchTextBox.Text;
       ...
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-02 20:12:12

不能使用后台线程中的WPF控件。您需要从主UI线程访问它们。在控件上使用Dispatcher属性:

代码语言:javascript
复制
UserSearchTextBox.Dispatcher.Invoke(() => SearchText = UserSearchTextBox.Text);

在后台线程运行时,您是否期望数据发生更改?如果没有,请在启动后台线程之前抓取它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48589382

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档