热门:网页模板.net视频教程JQueryMVCjsonExtJs源码示例三级联动JQuery菜单
您现在的位置:.Net中文社区>> .Net编程>>正文内容

C# 从线程中操作控件

发布时间:2009年09月14日点击数: 未知


//申明委托
         public delegate void mydelegate();
         //添加调用控制的方法
         public void outtext()
   {
            textBox1.Text = Read_str;
      
         }
              
         public void start_server()
         {
           while (true)
            {
                //接收从远程主机发送到本地8090端口的数据
                byte[] recData = server.Receive(ref receivePoint);
                ASCIIEncoding encode = new ASCIIEncoding();
                //获得客户端请求数据
                Read_str = encode.GetString(recData);
                //提取客户端的信息,存放到定义为temp的字符串数组中
                //string[] temp = Read_str.Split("/".ToCharArray());
                //在线程中调用对象;
                mydelegate mydelegate = new mydelegate( outtext );
                //BeginInvoke/invoke(同步或异步) 方法来将调用封送到适当的线程
                textBox1.BeginInvoke(mydelegate, new object[] { });

            }

        }

        public void run()
        {
            //利用本地8080端口号来初始化一个UDP网络服务
            server = new UdpClient(port);
            receivePoint = new IPEndPoint(new IPAddress(ip), port);
            //开一个线程
            startServer = new Thread(new ThreadStart(start_server));
            //启动线程
            startServer.Start();
            
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            //启动对时服务
            run();
            
        }



参考文章:http://msdn.microsoft.com/zh-cn/library/757y83z4(VS.80).aspx

本站热点业务

更多模板/案例展示

关于我们 | 联系我们 | 团队日志 | 网站地图 | 网站合作