通过事件与用户控件交互

时间:2009-09-23 07:52:13

标签: c# events user-controls encapsulation

我浏览了网站上的问题,但还没有找到合适的答案。

我的问题是由于所有的事件和方法,我的主要表单类混乱。

我决定将表单分解为用户控件。不幸的是,我无法从其他用户控件访问信息。

例如,我有一个打印一些信息的用户控件。但其中一些信息在另一个用户控件中。我该如何检索这些数据?

我读到的一个解决方案是将委托传递给“打印用户”控件。委托将包含来自信息用户控件的方法,该方法从控件返回数据。因此,每当调用print事件时,我都会调用该函数。

我的另一个解决方案是将事件附加到用户控件信息。每当用户控件中的信息发生变化时,我都会更新我的打印变量。

1 个答案:

答案 0 :(得分:1)

为什么你需要使用这个事件呢?如果控件X需要来自控件Y的信息,则将控件Y传递给控件X的构造函数。