gpt4 book ai didi

C# UserControl BeginInvoke问题

转载 作者:行者123 更新时间:2023-11-30 21:22:55 28 4
gpt4 key购买 nike

我有一个 C# 用户控件,它有自己的后台工作线程。此工作线程在控件的构造函数中启动,并在控件被释放时停止。

线程使用委托(delegate)定期调用 BeginInvoke-Method,但有时会出现异常“在创建窗口句柄之前无法在控件上调用 Invoke 或 BeginInvoke。”

现在我问你,只要控件未完全创建,我如何检查是否可以从我的工作线程调用 BeginInvoke 以不进行调用?

此问题仅在编译发布时出现。不在 Debug模式。

致以最诚挚的问候

最佳答案

工作线程应该在内部创建...(您有两个选择):

  1. Control.HandleCreated 事件的处理程序
  2. 重写 Control.OnHandleCreated

您需要知道的是,即使在构造函数执行完毕后,控件也可能未完全创建(准备好使用)。

关于C# UserControl BeginInvoke问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2050749/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com