C#绑定事件 C#绑定事件到方法后,触发事件显示为空,这是什么原因啊,求高手指导 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 主程序中绑定代码如下:ServerSocket addIP = new ServerSocket("", "");addIP.MessageArrived += new ServerSocket.DelegateSendmassage(addonline);类中定义事件代码如下: public delegate void DelegateSendmassage(string messageText);public event DelegateSendmassage MessageArrived;哪位高手帮我看看怎么回事啊~ 绑定到 addonline,这个东西在哪,你到底出现什么问题 是啊,你有addonline这个处理过程吗? addonline代码怎么写的?还是根本没写? 有啊 public void addonline(string message) { AddOnline(message); }就是触发事件时,显示MessageArrived为null,什么都没执行 估计是你在ServerSocket 中没有触发事件,你在要触发事件的地方加一句if(MessageArrived!=null){MessageArrived("xxx");} 就是这样触发的啊:MessageArrived(newClientSocket.RemoteEndPoint.ToString());刚刚运行了代码,发现方法并没有绑定到MessageArrived,MessageArrived一直都显示为空,这个是什么原因啊,代码问题的么 类中定义事件代码如下: public delegate void DelegateSendmassage(string messageText);public event DelegateSendmassage MessageArrived;主程序中绑定代码如下:ServerSocket addIP = new ServerSocket("", "");addIP.MessageArrived += new ServerSocket.DelegateSendmassage(addonline);public void addonline(string message) { AddOnline(message); }public void AddOnline(string userName) { if (CheckedOnline.InvokeRequired) { AddOnlineDelegate d = new AddOnlineDelegate(AddOnline); CheckedOnline.Invoke(d, new object[] { userName }); } else { CheckedOnline.Items.Add(userName); CheckedOnline.SelectedIndex = CheckedOnline.Items.Count -1; CheckedOnline.ClearSelected(); } }类中触发事件代码:MessageArrived(newClientSocket.RemoteEndPoint.ToString());求高手指点啊~ 设置断点,发现类中MessageArrived一直显示为null,可能是没有引发事件的原因吧,我再看看吧~ addIP.MessageArrived += new ServerSocket.DelegateSendmassage(addonline);这一句是不是有问题?addonline没有加引号,也没有括号addonline(string参数)?到底是什么 总算把问题解决了,代码没有问题,只是在其他地方将类重新实例化了,需要重新绑定事件才行,不然就为null 刚毕业,学的是.NET开发,大家帮帮忙!!!! C#对ACCESS数据库的时间段查询问题 C# 属性与变量的区的区别? 怎样读取硬盘号??? 求读邮件地址的方法~ COMBOBOX问题 令人头疼的问题,注册进去的用户名密码登陆不进去,在数据库直接插入的数据登陆就可以!!为什么啊 C#命名管道的通信速度问题 一般的登陆窗口如何防止alt+f4关闭?? C#中如何调用数据库中的存储过程?? 这个真得高手了,不一般的httpwebrequest的url问题,图 USB设备通讯的问题(写数据),已附上源码
ServerSocket addIP = new ServerSocket("", "");
addIP.MessageArrived += new ServerSocket.DelegateSendmassage(addonline);类中定义事件代码如下:
public delegate void DelegateSendmassage(string messageText);
public event DelegateSendmassage MessageArrived;
哪位高手帮我看看怎么回事啊~
{
AddOnline(message);
}就是触发事件时,显示MessageArrived为null,什么都没执行
你在要触发事件的地方加一句
if(MessageArrived!=null)
{
MessageArrived("xxx");
}
刚刚运行了代码,发现方法并没有绑定到MessageArrived,MessageArrived一直都显示为空,这个是什么原因啊,代码问题的么
public delegate void DelegateSendmassage(string messageText);
public event DelegateSendmassage MessageArrived;主程序中绑定代码如下:
ServerSocket addIP = new ServerSocket("", "");
addIP.MessageArrived += new ServerSocket.DelegateSendmassage(addonline);
public void addonline(string message)
{
AddOnline(message);
}
public void AddOnline(string userName)
{
if (CheckedOnline.InvokeRequired)
{
AddOnlineDelegate d = new AddOnlineDelegate(AddOnline);
CheckedOnline.Invoke(d, new object[] { userName });
}
else
{
CheckedOnline.Items.Add(userName);
CheckedOnline.SelectedIndex = CheckedOnline.Items.Count -1;
CheckedOnline.ClearSelected();
}
}类中触发事件代码:MessageArrived(newClientSocket.RemoteEndPoint.ToString());
求高手指点啊~
这一句是不是有问题?addonline没有加引号,也没有括号addonline(string参数)?到底是什么