C#窗体应用程序,在.Form.cs文件里,button触发事件里调用了一个自己写的函数,在这个还树立不能调用控件

ReceiveMessage()函数是自己添加的,其他的函数是双击控件产生的,我自己拖了一个button和一个label控件,为是么在ReceiveMessage(){}... ReceiveMessage()函数是自己添加的,其他的函数是双击控件产生的,我自己 拖了一个button和一个label控件,为是么在ReceiveMessage(){}函数体里面不能调用label?该怎么在ReceiveMessage()函数体里调用label哪
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net.Sockets;
using System.Net;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
var socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
socket.Bind(new IPEndPoint(IPAddress.Any, 4530));
socket.Listen(4);
socket.BeginAccept(new AsyncCallback((ar) =>
{
try
{
var client = socket.EndAccept(ar);
client.Send(Encoding.Unicode.GetBytes("接收到请求 : " + DateTime.Now.ToString()));
client.BeginReceive(buffer, 0, buffer.Length, SocketFlags.None, new AsyncCallback(ReceiveMessage), client);
}
catch (Exception ex)
{
label1.Text = "错误:" + ex.Message;
}
}), null);
label1.Text = "服务器准备好!";
}
static byte[] buffer = new byte[1024];
public static void ReceiveMessage(IAsyncResult ar)
{
try
{
var socket = ar.AsyncState as Socket;
var length = socket.EndReceive(ar);
//读取出来消息的内容
var message = Encoding.Unicode.GetString(buffer, 0, length);
//.......................................................................
//此处??????????????????????????????
label1.test=message;
//..................................................................................
socket.BeginReceive(buffer, 0, buffer.Length, SocketFlags.None, new AsyncCallback
(ReceiveMessage), socket);
}
catch (Exception ex)
{
//label2.Text = ex.Message;
// label2.Text = "socket 异常";
MessageBox.Show(ex.Message);
}
}
}
}
展开
 我来答
Sephil
2014-06-01 · 知道合伙人IT服务行家
Sephil
知道合伙人IT服务行家
采纳数:616 获赞数:1036
熟悉常用语言和数据库,爱写代码

向TA提问 私信TA
展开全部
label1.Text,你写错了?
更多追问追答
追问
哦,我写错了,应该T。改成大写,可是我的问题不在这里,改成大写也不行,在
ReceiveMessage()函数体里面根本识别不了label1,label1是我自己手动添加的控件
O(∩_∩)O谢谢
追答
也不是Test是Text
贴错误信息出来
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式