打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
调用线程必须为 STA,因为许多 UI 组件都需要

 Thread NetServer = new Thread(new ThreadStart(NetServerThreadFunc));
   NetServer.Start();

 

   WPF工程里,此线程不可以操作UI元素,避免方法如下:

 

1、public delegate void DeleFunc();
     public void Func()
     {

          //使用ui元素    

    }

   

    线程函数中做如此调用:

   System.Windows.Application.Current.Dispatcher.Invoke(System.Windows.Threading.DispatcherPriority.Normal,
                                                        new DeleFunc(Func));

    即可。

 

2、 Thread NetServer = new Thread(new ThreadStart(NetServerThreadFunc));
      NetServer .SetApartmentState(ApartmentState.STA);
      NetServer .IsBackground = true;

      NetServer.Start();
     

      线程函数中做如此调用:

     System.Windows.Threading.Dispatcher.Run();
     即可。

 
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
.NET中的四个Timer
.NET中的三种Timer的区别和用法
c# 中定时器的用法
浅谈Excel开发:十 Excel 开发中与线程相关的若干问题
[STAThread]的含义
C#中timer类(转)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服