我有一个带有集合或列表的 BaseForm,其中包含一些我想与子表单共享的类型化对象。这个想法是,我希望我的子表单也能够添加/删除这些对象。这些对象包含我想要进行视觉继承的某些图标/按钮的一些定义。
所以我有以下基本形式
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
public List<TItem> TItems
{
get { return this._TItems; }
}
public FormBase()
{
InitializeComponent();
//TItems.Add(new TItem());
}
和一个简单的对象
public class TItem
{
public string T1 { get; set; }
}
继承这个基本形式,我可以在设计器中为孩子自由修改集合。但是,一旦我注释掉从父表单添加项目的那部分,设计器中的集合属性(对于子表单)将显示为只读。
我尝试了不同类型的列表、自动属性、更改 DesignerSerializationVisibility.visible、从子构造函数初始化列表......我只是无法实现我想要的。
谁能指出我正确的方向?