在尝试实现mvp模式(被动视图)时,我在WinForms中使用嵌套用户控件(UC)时遇到了一个严重的问题。该项目由一个模型(设计为单例)和一组具有相应视图界面的不同呈现者组成。为了避免一个巨大的视图界面,从而避免过载的主UI,我决定使用一组不同的UC。每个UC都有一个视图界面和一个可以访问模型的演示者。但也有嵌套的UC :这意味着一个专门的UC实现了一种基本的UC。主UI只是表示所有这些UC的容器。到目前为止,一切顺利(如果不是,请询问)?!
我现在面临着两个问题(但我猜这两个问题都是同一来源的):
会不会是我的基本UC导致了所有这些问题?!它由两个简单的ComboBoxes组成,并实现了一个基本的presenter和基本的视图界面。每当我将此UC添加到不同的UC时,VS设计器都会添加两个对UC的公共getter方法的引用作为资源。然后,我手动从resx文件中删除这些资源,并推荐设计器文件中的相应行。
发布于 2010-06-11 16:19:32
对于第二个:您应该在代码中使用Component
类( UserControl
派生的)的DesingMode
属性。请注意,此属性在嵌套用户控件中没有正确的值,因此存在错误。我认为这会对你有帮助:When your WinForms UserControl drives you nuts
https://stackoverflow.com/questions/2356942
复制相似问题