我有一个包含一个Windows窗体的项目,其中包含大量控件。正如我在Divide large windows form in pieces中所读到的,我可以将它划分为几个用户控件。
如何从几个现有的控件创建一个用户控件(当它们有分配给它的行为的代码时- ButtonClick等)?是否有一种在Visual Studio中自动执行此操作的方法,或者我必须手动复制设计器视图中的控件,然后剪切并粘贴控件背后的代码?
谢谢!
发布于 2015-12-11 06:33:43
这不仅需要通过手动来完成。
到目前为止,更大但也更有益的部分将是为这些UC创建有用的接口方法和属性。
他们的控件将成为私有成员,并且将不能与其他UC中的那些成员一起工作。因此,您必须将所有这些依赖项分开,并在UC中创建定义良好的属性,以取代不同UC上的控件之间的所有交互。
这将是大量的工作,但如果你遵循它,它将是非常值得的。
不要只是让它们公开和/或在所有UC之间创建引用,只是为了让它更容易。取而代之的是创建有意义的公共方法、属性和委托来表达将要发生的事情,而不是以前编写的代码,因为所有的东西都被放在同一个表单上!
在UC之间隐藏的越多,设计就越好。
例如:目前可能有一个CheckBox可以让用户在两种模式之间切换。
使该模式成为一个有一个好名字并由CheckBox控制的Property。不要公开CheckBox!大多数情况下,一个UC永远不应该知道任何其他UC的任何控制,而只是少数几个属性的控制。
https://stackoverflow.com/questions/34212547
复制相似问题