【发布时间】:2010-09-10 15:34:42
【问题描述】:
我有一些自定义类的列表和一个用户控件来编辑该类的一个实例。我想在表单上有一个控件,允许添加新实例、删除实例和编辑任何实例。您对此有何建议?
控件占用的空间应该比现有对象实例的所有 UserControls 少(即有一些折叠)。估计集合中的最大对象数为 5-7。
【问题讨论】:
我有一些自定义类的列表和一个用户控件来编辑该类的一个实例。我想在表单上有一个控件,允许添加新实例、删除实例和编辑任何实例。您对此有何建议?
控件占用的空间应该比现有对象实例的所有 UserControls 少(即有一些折叠)。估计集合中的最大对象数为 5-7。
【问题讨论】:
没有内置控件可以为您提供此功能。我建议您复制在设计时用于编辑集合的相同方法。您在左侧有一个 ListBox,其中包含集合条目的列表。在右侧,您有一个 PropertyGrid,它显示 ListBox 中当前选定实例的属性。这允许编辑现有项目。或者,您可以使用自己的自定义 UserControl。然后添加用于删除条目的删除按钮和用于添加新所有者的添加按钮。按下“添加”按钮将显示一个对话框,让您选择要创建的可能类型。
【讨论】: