C# 如果何从线程中操作控件
2010-11-11 15:17
155 查看
Code
1 //申明委托
2 public delegate void mydelegate();
3 //添加调用控制的方法
4 public void outtext()
5 {
6 textBox1.Text = Read_str;
7 }
8 public void start_server()
9 {
10 while (true)
11 {
12 //接收从远程主机发送到本地8090端口的数据
13 byte[] recData = server.Receive(ref receivePoint);
14 ASCIIEncoding encode = new ASCIIEncoding();
15 //获得客户端请求数据
16 Read_str = encode.GetString(recData);
17 //提取客户端的信息,存放到定义为temp的字符串数组中
18 //string[] temp = Read_str.Split("/".ToCharArray());
19 //在线程中调用对象;
20 mydelegate mydelegate = new mydelegate( outtext );
21 //BeginInvoke/invoke(同步或异步) 方法来将调用封送到适当的线程
22 textBox1.BeginInvoke(mydelegate, new object[] { });
23
24 }
25 }
26 public void run()
27 {
28 //利用本地8080端口号来初始化一个UDP网络服务
29 server = new UdpClient(port);
30 receivePoint = new IPEndPoint(new IPAddress(ip), port);
31 //开一个线程
32 startServer = new Thread(new ThreadStart(start_server));
33 //启动线程
34 startServer.Start();
35
36 }
37 private void Form1_Load(object sender, EventArgs e)
38 {
39 //启动对时服务
40 run();
41 }
参考文章:
http://msdn2.microsoft.com/zh-cn/library/757y83z4(VS.80).aspx
1 //申明委托
2 public delegate void mydelegate();
3 //添加调用控制的方法
4 public void outtext()
5 {
6 textBox1.Text = Read_str;
7 }
8 public void start_server()
9 {
10 while (true)
11 {
12 //接收从远程主机发送到本地8090端口的数据
13 byte[] recData = server.Receive(ref receivePoint);
14 ASCIIEncoding encode = new ASCIIEncoding();
15 //获得客户端请求数据
16 Read_str = encode.GetString(recData);
17 //提取客户端的信息,存放到定义为temp的字符串数组中
18 //string[] temp = Read_str.Split("/".ToCharArray());
19 //在线程中调用对象;
20 mydelegate mydelegate = new mydelegate( outtext );
21 //BeginInvoke/invoke(同步或异步) 方法来将调用封送到适当的线程
22 textBox1.BeginInvoke(mydelegate, new object[] { });
23
24 }
25 }
26 public void run()
27 {
28 //利用本地8080端口号来初始化一个UDP网络服务
29 server = new UdpClient(port);
30 receivePoint = new IPEndPoint(new IPAddress(ip), port);
31 //开一个线程
32 startServer = new Thread(new ThreadStart(start_server));
33 //启动线程
34 startServer.Start();
35
36 }
37 private void Form1_Load(object sender, EventArgs e)
38 {
39 //启动对时服务
40 run();
41 }
参考文章:
http://msdn2.microsoft.com/zh-cn/library/757y83z4(VS.80).aspx
相关文章推荐
- C# 如果何从线程中操作控件
- C# 如果何从线程中操作控件
- C# 如果何从线程中操作控件
- C# 如果何从线程中操作控件
- 在C#中子线程如何操作主线程中窗体上控件
- c# 线程间操作无效: 从不是创建控件“0”的线程访问它
- C# 跨线程操作控件
- C# 线程操作 出现“从不是创建控件lstUser的线程访问它”错误的解决方法
- 【转】C#线程间操作无效: 从不是创建控件" XX" 的线程访问它
- 【C#】利用委托解决跨线程操作控件产生的问题
- 4000 c#关于“线程间操作无效: 从不是创建控件的线程访问它”的问题
- C#---线程间操作无效: 从不是创建控件“txtreceive”的线程访问它
- C#线程间操作无效: 从不是创建控件" XX" 的线程访问它
- bug:C#线程间操作无效: 从不是创建控件" XX" 的线程访问它
- C# 线程间操作无效: 从不是创建控件的线程访问它
- C# 采用系统委托的方式处理线程内操作窗体控件(转载)
- 2017.10.20 C#跨线程操作控件的线程安全方法
- c# 线程操作控件
- c# 线程间操作无效: 从不是创建控件“”的线程访问它,用托管来解决
- C# 子线程操作主窗体控件的解决方法