UserControl设计错误:[属性代码生成失败..程序集中的…类型未标记为序列化]

今天自己做了一个UserControl

写了这么个属性:

    public partial class sky : UserControl
    {
        private List<NMEAParse.aSatData> _datas;

        public List<NMEAParse.aSatData> datas
        {
            get { return _datas; }
            set
            {
                _datas = value;
                this.DrawGSVImg();
            }
        }

重新生成后 让窗体上拖 弹出一个错误对话框 (一直弹出)

提示:属性” ******** “的代码生成失败.错误是:”程序集”********.Version=1.0.0.0,Culture=neutral,……….无标记为序列化””]

截图如下:

解决办法:

  public partial class sky : UserControl
    {
        private List<NMEAParse.aSatData> _datas;

        [Bindable(false), Browsable(false)]
        [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]  //加上这两句
        public List<NMEAParse.aSatData> datas
        {
            get { return _datas; }
            set
            {
                _datas = value;
                this.DrawGSVImg();
            }
        }

参考:http://blog.csdn.net/frank_zu/archive/2009/03/26/4026105.aspx