在一个线程上创建的 C# 控件不能成为另一线程上控件的父级

2023-11-22

我正在运行一个线程,该线程获取信息并创建标签并显示它,这是我的代码

    private void RUN()
    {
        Label l = new Label();
        l.Location = new Point(12, 10);
        l.Text = "Some Text";
        this.Controls.Add(l);
    }

    private void button1_Click(object sender, EventArgs e)
    {
        Thread t = new Thread(new ThreadStart(RUN));
        t.Start();
    }

有趣的是,我以前有一个带有面板的应用程序,我曾经使用线程向其添加控件,没有任何问题,但这个应用程序不允许我这样做。


您无法从另一个线程更新 UI 线程:

 private void RUN()
        {
            if (this.InvokeRequired)
            {
                this.BeginInvoke((MethodInvoker)delegate()
                {
                    Label l = new Label(); l.Location = new Point(12, 10);
                    l.Text = "Some Text";
                    this.Controls.Add(l);
                });
            }
            else
            {
                Label l = new Label();
                l.Location = new Point(12, 10);
                l.Text = "Some Text";
                this.Controls.Add(l);
            }
        }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在一个线程上创建的 C# 控件不能成为另一线程上控件的父级 的相关文章

  • 使用 ITextSharp 从内存流附加 PDF 文件时遇到问题

    我在附加内存中创建的 PDF 文件并将其附加到电子邮件模板时遇到问题 电子邮件没有任何问题 但没有附件 我不明白为什么会发生这种情况 这是该过程的完整代码 ExtendedEmailTemplate emailTemp new Extend
  • 简单、高效的弱指针,当目标内存被释放时设置为 NULL

    有没有简单 高效的弱 保护指针 我需要多个指向同一对象的指针 当删除该对象时 这些指针都会自动设置为 NULL 有一个 主 指针始终用于删除对象 但可以有多个其他指针引用同一对象 以下是一些不太符合我的需求的解决方案 QPointer ht
  • 将多种类型存储为 C++ 字典中的值?

    我想编写一个行为几乎等同于 Python 字典的 C 对象 C 的std map and std unordered map容纳了 Python 字典已有的一些功能 但缺乏最重要的功能之一 即能够添加任意对象和类型 即使不可能 您离实现 P
  • 在 Silverlight 中同步操作

    我有一个 Silverlight 应用程序 它使用操作从模型获取数据 再次从 WCF 服务获取数据 我需要以某种方式同步两个 ActionCallback 或等待它们 然后执行一些代码 Example model GetMyTypeList
  • 将项目添加到字典中作为第一个项目c# [重复]

    这个问题在这里已经有答案了 我目前正在将项目添加到字典中 如下所示 private Dictionary
  • 剃刀 2 到剃刀 3 MVC 5

    我一直在开发 MVC 4 解决方案 并且一直在尝试将其升级到 MVC 5 我已按照概述的步骤操作here http www asp net mvc tutorials mvc 5 how to upgrade an aspnet mvc 4
  • .NET 4.0 进程中的 clr.dll!LogHelp_TerminateOnAssert

    背景 我正在开发一个基于 WinForm 的 NET 4 0 桌面应用程序 该应用程序几乎没有线程和计时器 并对用户控件使用一些 GDI 处理 在我的开发过程中 我通常会查看 sysinternal 的 Process Explorer 以
  • 图像的 EMGU/OpenCV FFT 未产生预期结果

    我正在尝试使用 EMGU 可视化图像的 FFT 这是我正在处理的图像 这是预期的结果 Here s what I get 这是我的代码 Image
  • 通过模板参数向类添加方法

    我希望在类中拥有一个模板参数特定函数 取消启用enable if 它的名称保持不变 参数类型有所不同 尽管这应该不相关 因为只有一个被初始化 enum class MyCases CASE1 CASE2 template
  • 使用ThreadPoolExecutor,allowCoreThreadTimeOut和零核心线程有什么区别?

    阅读以下文档线程池执行器 https docs oracle com javase 7 docs api java util concurrent ThreadPoolExecutor html 我很困惑以下示例用法之间的区别 零个核心线程
  • C# Response.Write pdf 不适用于 Android 浏览器

    我目前在 Android 环境中使用 pdf 导出时遇到了巨大的问题 我正在使用报告查看器控件将报告呈现为字节数组 接下来我使用response binarywrite方法将字节流输出到浏览器 这适用于所有浏览器以及 iPhone 和 iP
  • ElementReference 对 Blazor 中条件创建的元素的引用

    我正在尝试将焦点设置为有条件呈现的输入控件 我正在设置ElementReference但它的 id 和 context 都是空的
  • 使用日期时间作为文件名并随后解析文件名?

    我正在将文件写入硬盘 文件名是这样构建的 String Format 0 yyyy MM dd hh mm ss txt DateTime Now 例如 文件名是 2010 09 20 09 47 04 txt 现在我想在下拉列表中显示这些
  • 如何使用 PostSharp 拦截基类上的方法调用?

    我想提供一个实现System Object ToString使用 PostSharp 到各种类 我创建了一个继承自的方面MethodInterceptionAspect但是OnInvoke调用时不会调用方法EchoDto ToString发
  • 检查SQL Server数据库表中是否存在表或列

    在 SQL Server 数据库中创建列或表之前 我想检查所需的表和 或列是否存在 我已经四处搜寻 到目前为止发现了两种方法 我不想使用存储过程 通过使用SqlCommand ExecuteScalar 方法并捕获异常来确定表 列是否存在
  • 在异步方法中显示错误消息的更好方法

    事实上我们不能使用await关键字在catch块使得在 WinRT 中显示来自异步方法的错误消息变得非常尴尬 因为MessageDialogAPI 是异步的 理想情况下我希望能够这样写 private async Task DoSometh
  • Caliburn.Micro 事件聚合器

    如果这是一个非常愚蠢的问题 请道歉 但我刚刚开始使用 caliburn micro 我正在努力获取 eventAggregator 似乎没有任何内容订阅 我不确定问题是出在视图模型还是引导程序上 这是视图模型 class MainWindo
  • xaml.cs 文件上的 InitializeComponent() 出现错误

    有时我会收到一个红色错误 内容如下 InitializeComponent 在当前上下文中不存在 以及我的其他变量 xaml受约束的x Name The x ClassXaml 文件中的名称空间和类名确实对应于我的xaml cs file
  • C++中main函数可以调用自身吗?

    谁能告诉我下面的代码有什么问题吗 int main return main 我测试了一下 编译正确 它永远运行 幕后还有什么阴谋吗 TLDR 呼叫main导致未定义的行为 标准中使用的术语以及对程序员和编译器的影响似乎存在混淆 首先 单独的
  • C++ 中的无符号双精度?

    为什么 C 不支持无符号双精度语法 因为典型的浮点格式不支持无符号数 例如 参见此 IEEE 754 格式列表 http en wikipedia org wiki IEEE 754 2008 Formats 添加通用硬件不支持的数字格式只

随机推荐

  • 如何在 Windows 下使用 Unicode 字符显示消息/警告/错误?

    我有一条包含 Unicode 字符的消息 或警告或错误 该字符串有UTF 8编码 x lt u20AC ub124 a euro symbol and Hangul ne 1 Encoding x 1 UTF 8 在 Linux 下 如果区
  • 图像每 30 秒更改一次 - 循环

    我想在 30 秒后更改图像 我使用的 JavaScript 看起来像这样 var images new Array images 0 image1 jpg images 1 image2 jpg images 2 image3 jpg se
  • re.sub 错误“预期字符串或类似字节的对象”

    我已阅读有关此错误的多篇文章 但我仍然无法弄清楚 当我尝试循环遍历我的函数时 def fix Plan location letters only re sub a zA Z Search for all non letters Repla
  • 将 Microsoft Access 作为计划任务运行

    我正在寻求有关如何安排数据库 accdb 自动更新的评论 因为我对我设置的流程不太满意 目前 其工作原理如下 任务计划程序调用 bat bat 调用 vbs vbs 打开数据库并调用宏 宏调用函数 VBA级别 该函数调用更新子例程 我认为步
  • JComboBox 无法在 JTable TableHeader 中展开

    我已经阅读了 JTable JComboBox 对此类其他问题的大部分答复 但尚未找到解决我的问题的方法 我创建了一个包含 JComboBox TableHeader 元素的表 任何 JComboBox 元素都不会打开以显示项目列表 如何获
  • Android开发中MonoDroid VS Java?

    我非常了解 C 并且喜欢将 Visual Studio 作为 IDE 但现在我想开始为 android 开发 我发现关于单一机器人并想问一下它是否有任何缺点可以使 Java 更受欢迎 或者我应该卸载 Eclipse 并直接进入 MonoDr
  • Firebase错误:请求的数据超出了单个请求可以访问的最大大小

    我需要export my Firabase数据库为JSON通过 Firebase 控制台 但是当我这样做时 我在 JSON 文件中收到以下消息 请求的数据超出了可以访问的最大大小 单一请求 我怎样才能解决这个问题 额外细节 这是我在控制台中
  • 无法连接到 Google 云连接服务器

    我尝试在我的服务器和 Google Cloud 连接服务器 CCS 之间打开 XMPP 连接 但它不起作用 我正在使用 PHP 进行编程并使用 JAXL 库 这是我的代码
  • 异常处理——显示发生错误的行号? [复制]

    这个问题在这里已经有答案了 可能的重复 在异常处理中显示行号 有人可以告诉我如何获取发生错误的代码的行号并将其显示到控制台吗 其他信息 例如文件名或方法名称 将非常方便 如果您需要文件和行号 则无需解析 StackTrace 字符串 您可以
  • Adobe Flash Builder (flex4):addChild() 在此类中不可用。

    我想将 swf 加载到 flex 4 应用程序中以便使用它的类 var ldr Loader new Loader ldr load new URLRequest file path to fileswf ldr contentLoader
  • 如何使用 swiftlint 来检查单个文件?

    我想使用 swiftlint 来检查单个文件 我该如何实现这个目标 检查文档https github com realm SwiftLint没有帮助 您还可以通过以下方式执行此操作 swiftlint path path to your f
  • 垂直和水平对齐 checkBoxGroupInput

    在类似的帖子中 如何在 R Shiny 中对齐一组 checkboxGroupInput 复选框仅垂直对齐 如我的示例 或仅水平对齐 R 水平闪亮显示 checkboxGroupInput 我想知道是否有一种方法可以在两种意义上实现这一点
  • 闪亮的 R 对齐按钮

    我的 U i 文件中有两个按钮 div style display inline block submitButton Analysis div style display inline block downloadButton downl
  • matlab 是否有像 python 中那样的列表理解之类的东西?

    我正在寻找类似 matlab 中的列表推导式的东西 但是我在纪录片中找不到类似的东西 在Python中它会是这样的 A i 50 for i in range 50 Matlab 非常喜欢 矢量化 您可以将示例写为 A 0 49 50 Ma
  • 使用tensorflow的数据集管道,如何*命名*“map”操作的结果?

    我有下面的地图函数 可运行的示例 它输入一个string并输出一个string and an integer in tf data Dataset from tensor slices我将原始输入命名为 filenames 但是当我从地图函
  • 宏作为另一个宏的参数

    我正在尝试将参数传递给宏SETBIT与另一个像这样的预定义宏 define SETBIT ADDRESS BIT N N ADDRESS 1 lt
  • 如何将 React 与 p5.js 结合使用

    我真的很喜欢p5 js和react js 所以我想知道如何将这两个结合在一起 但我无法做到这一点 所以我需要你的帮助 我真的无法为您提供一些代码示例 因为我不知道如何开始 所以我想做的是 1 创建反应应用程序 2 使用p5 js渲染画布 我
  • 格式化/缩进我的 HTML 代码的 PHP 函数/类? [复制]

    这个问题在这里已经有答案了 是否有 PHP 函数 类可以清理我的 HTML 代码 例如 html ul li item1 li li item2 li echo htmlClean html Outputs ul li item1 li l
  • MySQL 5.5 分区表(按 A-Z)

    据我了解 从 MySQL 5 5 开始 您现在可以按非整数值 例如 varchar 对表进行分区 我有一个表 在其中对单个 varchar 列执行大量查找 因此出于性能原因我想对其进行分区 在所有情况下 列的值都是单个字母单词 严格小写 a
  • 在一个线程上创建的 C# 控件不能成为另一线程上控件的父级

    我正在运行一个线程 该线程获取信息并创建标签并显示它 这是我的代码 private void RUN Label l new Label l Location new Point 12 10 l Text Some Text this Co