有没有办法在Winforms中复制和访问设计器绘制的控件?

时间:2013-10-10 18:09:22

标签: c# winforms

我想在设计器中创建一组控件,然后一遍又一遍地复制它。这是一张图片,以帮助想象我正在描述的内容:

enter image description here

目前我编写每个控件的位置以适合面板。这样做是很乏味的,我每次做出改变时都必须运行程序,以确保所有内容都按照我喜欢的方式排列。这是该面板的第四次迭代,我准备为不同的客户做至少两个以上的设计,他们需要稍微不同的方式来显示相同​​的数据。

有没有办法在设计器中绘制面板及其控件,以编程方式复制整个控件集,并将不同的数据绑定到每个控件?

1 个答案:

答案 0 :(得分:2)

如果您想让客户移动这些控件,您需要:

  1. 创建持久性存储。基本上,您的控件需要从某种文件或更好的文件构建自己 - 数据库,其中所有位置和其他属性将被设置,保存等。

  2. 开发"设计模式"为客户。客户将点击按钮" Design"并且能够移动控件,重新调整大小等等。对于您而言,在设计模式中,您希望将控件设为可药物,并且您还需要设计一种方法来调整它们的大小。然后客户点击"保存"和控制数据应保存到持久性存储中。

  3. 现在,如果您可以重新实现客户的多重查找并希望快速完成 - 创建UserControl,在其上放置TableLayoutPanel,然后使用TableLayoutPanel's系列提供任何内容期待你的控制。这是一种相当快速的方式。如果我只需要做10次,我就会创建一个控制工厂,并将每个新实现添加到其中。让客户挑选出现有的实施方案。因为创造设计师会相当努力。