调用线程无法访问此对象,因为不同的线程拥有它。WPF [重复]

2023-12-01

每当我刷新标签时,都会收到此错误:调用线程无法访问该对象,因为另一个线程拥有它。我尝试调用但失败了。我正在使用 WPF 表单。

delegate void lostfocs(string st);
   private void imgPayment_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
    {

        Thread t = new Thread(modi);
        t.Start();
    }
 void modi()
    {
        try
        {
            label1.Content = "df";
        }
        catch
        {
            lostfocs ld = new lostfocs(up);
          //  ld.Invoke("df");
            object obj=new object();
            ld.Invoke("sdaf");
        }
    }
void up(string st)
    {
        label1.Content = st;
    }

Use 调度程序.调用方法。

在线程上同步执行指定的委托 与调度程序关联。

Also

在 WPF 中,只有创建 DispatcherObject 的线程才可以访问 那个物体。例如,一个脱离的后台线程 主 UI 线程无法更新按钮的内容 在 UI 线程上创建。为了让后台线程 访问 Button 的 Content 属性,后台线程必须 将工作委托给与 UI 线程关联的 Dispatcher。 这是通过使用 Invoke 或 BeginInvoke 来完成的。调用的是 同步而 BeginInvoke 是异步的。该操作被添加到 指定 DispatcherPriority 的 Dispatcher 的事件队列。

您收到错误是因为您的标签是在 UI 线程上创建的,并且您试图通过另一个线程修改其内容。这是您需要 Dispatcher.Invoke 的地方。

看看这篇文章WPF 线程使用调度程序构建响应速度更快的应用程序

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

调用线程无法访问此对象,因为不同的线程拥有它。WPF [重复] 的相关文章

随机推荐

  • jQuery 中的 jQuery() 函数有什么作用?

    In 这个视频有一段代码是这样的 if jQuery jQuery function 我从未见过jQuery 之前的函数 话又说回来 我不是一个精明的 jQuery 用户 它有什么作用 它是默认随 jQuery 一起发布还是特定于IxEdi
  • 在 Android SDK 管理器中找不到支持包

    我需要支持包 jar 文件 我打开了页面http developer android com sdk compatibility library html Downloading并按照他们所说的去做 启动 SDK 和 AVD 管理器 在 E
  • 无法使用状态值作为子组件的 props

    在我的 React js 应用程序中 我似乎无法使用状态值作为子组件的道具 在父组件中 constructor 应用程序有一个称为空状态selectedWarehouseID 这种状态 selectedWarehouseID 应该更新一些信
  • 如何打开特定相册或文件夹的默认图库应用程序?

    我在网上找到的每个例子都是打开图库并从图库中获取图像作为结果 我的需要是我不想将结果或图像添加到我的应用程序中 我只想触发图库应用程序来显示特定的图像文件夹 我的应用程序有单独的文件夹来保存图像 我需要将用户直接导航到该路径 试试这个代码
  • 在 Jscript 中获取给定用户的特殊文件夹路径

    如何获取当前用户以外的特定用户的 shell 文件夹 例如 本地设置 或 本地应用程序数据 的路径 虽然有一些方法可以在 Windows Script Host 中获取特殊文件夹路径 WshShell SpecialFolders and
  • odeint 简单一维 ode 示例无法编译

    我试着跑指定示例在 Debian Squeeze g 4 4 上的 boost 1 54 0 中 洛伦兹系统工作正常 但是简单的一维颂歌 include
  • VB.Net默认表单实例

    我已替换 正则表达式 所有对默认表单实例在我的项目中 我现在想确保我不再使用默认实例 似乎默认实例功能无法禁用 不改变类的ctor 任何人都知道如何在 VB Net 中查找默认表单实例的所有用法 或者 使用类名访问非共享成员 仅供参考 我正
  • 使用 python Flask 从数据库中删除行?

    我正在使用 Flask 框架 似乎无法从数据库中删除行 下面的代码给出了 405 错误 所请求的 URL 不允许使用该方法 有任何想法吗 在py中 app route delete
  • 如何在 jquery 中包含 !important

    我正在尝试使用 jQuery 在 css 属性中添加 important tabs css height 650px important 但是 important 没有效果 如何在 jquery 中包含 important 显然可以在 jQ
  • 运算符重载:无法添加两个指针

    我创建了一个 Fraction 类 它具有用于在两个 Fraction 对象之间进行加 减 乘和除的成员函数以及所需的默认构造函数和复制构造函数 对于这个问题 我必须使用指针 不能使用向量 因为只有用户选择才能创建 Fraction 对象
  • GatsbyJS 与 Firebase - WebpackError:ReferenceError:IDBIndex 未定义

    我收到错误盖茨比发展 它与这个非常相似 https github com firebase firebase js sdk issues 2222 但我收到错误盖茨比发展 而不是盖茨比构建 我做了很多研究 但找不到有效的解决方案 起初我有一
  • MySQL 内连接查询语法错误

    我是一个 MySQL 新手 无法弄清楚这里出了什么问题 我有两张桌子 左表称为 锻炼 相关列是date 输入日期 和id 类型 int 右表称为Workout locations 相关领域 workout id type int and l
  • 通过撰写导航传递 Parcelable 参数

    我想传递一个可分割的对象 BluetoothDevice 使用组合导航转换为可组合项 传递原始类型很容易 composable profile userId arguments listOf navArgument userId type
  • 以同样的方式随机化两个数组 Swift

    我知道有一种新的随机播放方法iOS 9但我想知道是否有办法以相同的方式对两个数组进行洗牌 例如 1 2 3 4 and a b c d shuffle 3 4 1 2 and c d a b 使用shuffle 方法来自如何在 Swift
  • 如何使用表达式来调用以通用列表作为参数的方法调用?

    我们正在使用非常优秀的字符串生成器在我们的项目中作为 ToString 实现的高性能 通用支持 它在调试方面工作得很好 直到我需要生成对象图的字符串表示形式以检查它在加载和关闭之间是否发生了变化 以前我曾使用 MemoryStream 将对
  • swift 中函数和泛型函数的区别

    我想知道 swift Function 和 Generic 函数之间的区别 函数和泛型函数的作用相同 谁能告诉我泛型函数的确切用法 func simpleMin
  • 与矩形以外的形状碰撞..?

    我已经习惯了仅使用矩形进行碰撞检测 所以现在有点困惑 我正在处理类似钻石的形状 在过去的几个小时里 一直在试图找出如何检查碰撞 我尝试检查第一个对象的四个点是否在第二个对象的点内 但这只是形成一个盒子 我认为 我觉得自己在这方面遇到困难的原
  • 一维数组中的唯一值,无需迭代

    冒着成为话题的风险 我决定分享一些代码 问答式 如果普遍认为这是偏离主题的 我会很乐意在需要时删除 Background 我们可以从任何一维数组中检索所有唯一值 或者Range对象变成一维数组 而不必迭代其元素 就我而言 普遍的共识是 必须
  • Node.js:如何顺序运行异步代码

    我有这段代码 User find function err users for var i 0 i lt users length i pseudocode Friend find user curUser id function err
  • 调用线程无法访问此对象,因为不同的线程拥有它。WPF [重复]

    这个问题在这里已经有答案了 每当我刷新标签时 都会收到此错误 调用线程无法访问该对象 因为另一个线程拥有它 我尝试调用但失败了 我正在使用 WPF 表单 delegate void lostfocs string st private vo