集合属性的持久化——用集合编辑器编辑集合属性并自动生成代码

本文介绍了在控件开发中遇到的集合属性持久化问题,当在WinForm窗体上编辑TableLayoutPanel的集合属性FirmControl后,运行时发现未保存添加的项。原因是缺少了[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]特性,该特性决定属性内容是否序列化。同时,集合属性必须实现IList或CollectionBase。文章还列举了其他设计时属性,如Bindable、Browsable、Category、Description等的相关特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天在进行控件开发的时候,遇到了一个棘手的问题,问题描述如下:

       public class CoreTableLayoutPanel : TableLayoutPanel

    {

        private List<ControlBoxItem> _firmControl=new List<ControlBoxItem>();

        [Browsable(true)]

        [Description("设定不可移动的控件集合")]

        public List<ControlBox> FirmControl// ControlBox为一实体类,此处为显示

        {

            get

            {

                return this._firmControl;

            }

        }

         .

         ..

     }

该控件继承自TableLayoutPanel

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值