2010-06-27 38 views
0

我的应用程序使用一个日志类,它由每个模块在构建时调用。在构造实例之前是否可以附加事件处理程序?

每次添加新条目时,logging类都会触发一个事件,以便可以更新GUI。

有没有什么方法可以聆听施工过程中发生的事件?

举例来说,我现在有这个在我的呼唤类:

input = new Inputs.Webcam(); 

input.log.LogUpdate += new LogUpdateHandler(...); 

但模块的建设过程中我也写日志。 (目前这会因为没有监听器而引发错误。)有什么方法可以监听这些事件吗?

+0

'log'从哪里来? – SLaks 2010-06-27 20:04:51

+0

日志由Inputs.Webcam在施工过程中创建。 – 2010-06-27 20:14:47

回答

2

这是完全不可能的。

相反,您可以使用静态事件。

+0

我担心你会这么说。我想我会重构,以便生成日志条目的代码在构造函数之外。 – 2010-06-27 20:16:13

+0

这是一个非常好的主意。 – SLaks 2010-06-28 01:04:48

2

难道你只是将日志处理方法传递给ctor?

var input = new Inputs.Webcam(new LogUpdateHandler(...)); 
相关问题