首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Winforms MVP与Castle Windsor - DI for subforms?

Winforms MVP与Castle Windsor - DI for subforms?
EN

Stack Overflow用户
提问于 2010-04-15 09:48:01
回答 1查看 1.7K关注 0票数 2

我正在构建一个winforms应用程序,利用被动视图MVP和Castle Windsor作为IoC容器。对于依赖注入和MVP,我还是个新手,所以我需要一些清晰的东西...

我有一个主窗体,其中包含许多用户控件,还将弹出其他对话框(例如。登录、选项等)。我的第一个问题is...should我使用构造器注入将这些其他视图的呈现者放入主视图,或者我是否应该回到服务定位器类型的模式?(我被告知这是一个很大的不!)还是别的什么?

第二个question...the用户控件需要在“完成”时与主窗体通信(该状态的定义因控件而异)。有没有一种标准的方法把它们连接起来?我在想,也许只是把主要主持人和儿童主持人之间的事件连线起来,但我不确定这是否是正确的想法。

我非常感谢任何人的帮助,似乎在winforms中MVP和IoC的组合并没有很好的文档。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-04-17 15:10:22

首先我要说的是,我已经有一段时间没有编写WinForms了,所以我可能并不完全准确。

如果你使用的是被动视图,你的视图应该没有依赖关系,所以你不需要向其中注入任何东西。Presenter应该由容器实例化,并通过.ctor将IView注入其中。通常避免使用服务定位器-- this post描述了一些强大的替代方案。

对于回传,我会使用某种桥接接口,它将被注入到演示者中。我在这里含糊其辞,因为细节取决于你的场景的具体情况,以及你如何准确地决定划分你的逻辑。

一般来说,不要太关注IoC容器-它只是一个工具,可以为你做一些(很大的)工作,但它不是魔术棒-你应该能够在没有容器的情况下做同样的事情,所以如果它分散了你的注意力,可以在原型开发时将其从图片中删除。

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

https://stackoverflow.com/questions/2642245

复制
相关文章

相似问题

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