Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过事件与用户控件交互_C#_Events_User Controls_Encapsulation - Fatal编程技术网

C# 通过事件与用户控件交互

C# 通过事件与用户控件交互,c#,events,user-controls,encapsulation,C#,Events,User Controls,Encapsulation,我已经浏览了网站上的问题,但还没有找到一个合适的答案 我的问题是,由于所有的事件和方法,我的主要表单类都很混乱 我决定将表单分解为用户控件。不幸的是,我无法从其他用户控件访问信息 例如,我有一个打印一些信息的用户控件。但其中一些信息在另一个用户控件中。我将如何检索该数据 我读到的一个解决方案是将委托传递给打印用户控件。委托将包含来自Information User控件的方法,该方法从控件返回数据。因此,每当调用print事件时,我都会调用该函数 我的另一个解决方案是将事件附加到信息用户控件。每当

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

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

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

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

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


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

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