C#UserControl BeginInvoke问题

时间:2010-01-12 17:03:09

标签: c# user-controls begininvoke

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

线程使用委托定期调用BeginInvoke-Method,但有时在创建窗口句柄之前,无法在控件上调用“Invoke或BeginInvoke”。 occoures。

现在我问你,如果没有完全创建控件,我怎么能检查是否可以从我的工作线程调用BeginInvoke来不进行调用?

此问题仅在编译版本时出现。不在调试模式下。

最好的问候

1 个答案:

答案 0 :(得分:4)

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

  1. Control.HandleCreated事件的处理程序
  2. 重写Control.OnHandleCreated
  3. 您需要知道的是,即使在构造函数执行完毕后,控件也可能无法完全创建(准备好使用)。