美文网首页
C#提示DragDrop注册失败

C#提示DragDrop注册失败

作者: 堆石成山 | 来源:发表于2024-02-22 15:14 被阅读0次

    该错误是在多线程里调用UI控件时出现。
    原因是一般的winform程序的Program应用程序的主入口点函数static void Main()会加[STAThread]。而我们多线程调用一些控件的时候未加该限定。加上如下第二行话即可解决:

      Thread th= new Thread(new ParameterizedThreadStart(CreateSocket));
      th.ApartmentState = ApartmentState.STA; //解决dragdrop注册失败的报错提示。
      th.Start();
    

    分析下我的场景:原本主线程调用了某自定义控件,而在多线程里面运用反射再一次调用该自定义控件时,提示dragdrop注册失败了。

    相关文章

      网友评论

          本文标题:C#提示DragDrop注册失败

          本文链接:https://www.haomeiwen.com/subject/phqgadtx.html