首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >要传入构造函数的捆绑方法

要传入构造函数的捆绑方法
EN

Stack Overflow用户
提问于 2018-06-11 15:15:52
回答 1查看 52关注 0票数 0

我必须将方法从用户控件传递到WPF。为此,我使用委托( UserControl调用WPF,所以我不能从WPF调用UserControl )。

在UserControl中:

代码语言:javascript
复制
myWPF = new WPF1.UserControl1(Method1, Method2, Method3, Method4);

在WPF中:

代码语言:javascript
复制
public delegate int Del1(int i)
public Del1 MyMethod1;
public delegate string Del2(int i)
public Del2 MyMethod2;
public delegate void Del3()
public Del3 MyMethod3;
public delegate void Del4()
public Del4 MyMethod4;

// Constructor
public UserControl1(Del1 MyMethod1, Del2 MyMethod2,Del3 MyMethod3,Del4 MyMethod4)
{
   MyMethod1 = Method1;
   MyMethod2 = Method2;
   MyMethod3 = Method3;
   MyMethod4 = Method4;
}

我有很多方法要传递。有没有可能传递一堆方法,其中我拥有所有的方法,而不是一个接一个地传递?

EN

回答 1

Stack Overflow用户

发布于 2018-06-11 15:31:24

虽然这不是你确切问题的答案,但我确实认为这是正确的答案:

看看Dependency Injection吧。

简单地说,通过这种方式,您可以在接口中定义所需的方法,在单独的类中实现它们,并在接口中传递。您可以在应用程序启动时注册实现接口的类(或者甚至可以基于上下文动态注册)。这种方式将定义(契约)从实现中分离出来,从而提供了更多的灵活性和可测试性。

有关更多信息,请参阅Martin Fowler对Inversion of Control Containers and the Dependency Injection pattern的解释

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50792246

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档