读书人

c# winform中的委托有关问题

发布时间: 2013-10-29 12:07:57 作者: rapoo

c# winform中的委托问题
委托的问题
我写了3个页面 其中主form窗体中用
doTask = new DOThread();
doTask.Log += tManage_Log;
AKC = new AKCMS();
AKC.Log += tManage_Log;
方法是下面
private void tManage_Log(object sender, cGatherTaskLogArgs e)
{
string pageName = "page" +e.TaskNode + ":" + e.TaskName;
SetValue(this.tabControl1.TabPages[pageName].Controls[0], "Text", e.strLog);


}
在doThread中加了这段 /// <summary>
/// 采集日志事件
/// </summary>
public event EventHandler<cGatherTaskLogArgs> e_Log;
internal event EventHandler<cGatherTaskLogArgs> Log
{
add { e_Log += value; }
remove { e_Log -= value; }
}
用e_Log(this, new cGatherTaskLogArgs(TaskNode, TaskName, ((int)cTool.LogType.Error).ToString() + "请检查网站信息是否配置出错")); 没什么问题

在AKCM中同样加 /// <summary>
/// 采集日志事件
/// </summary>
private event EventHandler<cGatherTaskLogArgs> e_Log;
internal event EventHandler<cGatherTaskLogArgs> Log
{
add { e_Log += value; }
remove { e_Log -= value; }
}
用e_Log(this, new cGatherTaskLogArgs(TaskNode, TaskName, ((int)cTool.LogType.Error).ToString() + "请检查网站信息是否配置出错")); 为什么会报错 说是为将对象引用到对象实例 winform 对象 委托 c#
[解决办法]
跟踪一下,TaskNode, TaskName可能为null

*****************************************************************************
签名档: http://feiyun0112.cnblogs.com/

读书人网 >C#

热点推荐