传入可以设置为其他功能的“对动作的引用”

时间:2018-05-16 18:42:15

标签: c#

我有一个调用我们的UI系统的函数。 UI系统窗口打开了参数,一个包含数据的类。

以下是流程:

  

程序逻辑 - >使用参数调用UI->显示UI

在某些时候,我想隐藏UI,但隐藏它的调用需要来自程序逻辑。我没有任何真正简单的方法来做到这一点,所以我想知道是否有可能将动作或引用发送到开放参数中,我可以在UI中以某种方式操纵它以将其链接到解除函数,然后我可以从主逻辑中调用。

这是流程:

  

程序逻辑 - >使用包含“操作”的参数调用UI   引用“在主程序逻辑中保存 - >动作参考是   指向关闭UI功能。

现在,当我从程序逻辑调用此操作时,它会关闭UI。

我意识到这是一个具体的问题,我无法准确描述我的目标,但我希望它能继续下去。

1 个答案:

答案 0 :(得分:0)

从最广泛的角度来看,这被称为delegate。在现代C#中,您可能使用的代理类型是anonymous delegate,可以用lambda expression表示。简短形式是任何委托样式都允许您传递一个可以调用的对象,其中接收代码对其实际所做的事情一无所知。这听起来像你讨论的想法大约99%。