通过类层次结构冒泡事件的体系结构

时间:2015-01-01 21:41:28

标签: c# events event-bubbling

我有一个简单的应用程序,它包含一个控制台应用程序和一个类库。班级图书馆在几十个课程中完成了所有繁重的工作。其中一些类是类库的内部类,即使是公共类,我也不希望控制台应用程序完全了解它们。

所以我可以有类似的东西:

  1. 我正在运行的Program.cs类。
  2. Program.cs正在调用我的DoSomething.cs类。
  3. DoSomething.cs正在调用的DoSomethingInParticular.cs类
  4. 依此类推,等等。
  5. 是否有一种普遍理解的方式让Program.cs意识到较低的变化?

    从功能上讲,我希望让我的控制台应用程序将较低级别的事件写入控制台窗口,这是我尝试使用它的地方。

1 个答案:

答案 0 :(得分:1)

模块只知道它知道的内容。

我看到2.1主要路径。

1)在DoSomething中制作节目可以收听的公共活动 在DoSomethingInParticular中制作DoSomething可以收听的公共活动 当DoSomething收到一个事件时,它决定是否适合冒泡并将其转换为自己的一个事件,并将其提升以便程序接收。

1.1)将事件中携带结构/类的数据放入另一个公共lib中。然后当收到一个事件时,DoSomething不必转换它,而只是决定是否冒泡它。

2)创建一个自己的事件处理lib来处理谁收到了什么。

如果不知道更多,我会选择1.1。

HTH

相关问题