如何让动态用户控件与设计师玩得很好

本文关键字:设计师 很好 控件 动态 用户 | 更新日期: 2023-09-27 18:08:23

我有一个动态用户控件,它根据对象组中的成员数量动态实例化各种栏和标签。这个功能工作得很好,但问题是我不是这个项目的唯一开发人员。我是团队的新成员,而"资深"成员希望所有组件都能在设计师中工作。由于用户控件的组件是在运行时生成的,我不确定如何去做一些/任何他们显示在设计视图。这是一个选择吗?

如何让动态用户控件与设计师玩得很好

我认为这是不可能的,因为没有任何标记可供设计师显示。我很难相信他们会期望在设计器中显示动态创建的控件。

编辑

再考虑一下,为什么不在标记中添加一些控件的硬编码实例,并具有添加/删除的能力呢?这样,控件将显示在设计器中,但您仍然可以添加/删除实例。在这种情况下,这可能是最好的妥协。

为什么不同时提供在设计时和运行时定义动态控件数量的可能性呢?

  1. 在您的自定义控件类中,您可以定义一个属性来指定控件的数量。在此属性的set{}方法中实现添加/删除控件

  2. 将你的属性设置为"designer property"。见http://msdn.microsoft.com/en-us/library/a19191fh.aspx

请记住,设计器实际上创建了类的实例。此外,当用户在设计器中更改"属性"时,将调用set{}方法。

希望对大家有所帮助