具体的问题链接如下
http://community.csdn.net/Expert/topic/3565/3565339.xml?temp=.6033289请帮忙!!

解决方案 »

  1.   

    试试在
    InitializeComponent();
    后面加上一句
    this.SetStyle(ControlStyles.UserPaint,true);
      

  2.   

    CSTerry(Terry):
       我加了,还是不行,劳驾打开那个链接看看我的问题,拜托!!
      

  3.   

    请添加以下两个方法:public bool ShouldSerializeTagSource
    {
        return (s_tag != 一个默认值);// 由对象实例化时的缺省值
        // 直接返回 true 也可。
    }public void ResetTagSource()
    {
        s_tag = 默认值;
        // Tag_Source = 默认值; // 如果需要引发属性值改变事件或其他处理
    }反编译一下 .NET 的类库,会发现 Control 的 Font 属性的设计时保存值就是如此实现的。
    具体信息请参见 System.ComponentModel.DefaultValue 特性的描述。
      

  4.   

    AhBian(阿扁) :
      谢谢你,我加了,问题依旧。你哪有例子吗,给我发一个!!
       [email protected]
      

  5.   

    问题已经解决:
    1、用struct代替Component实现可展开的属性更简捷
    2、注意TypeConvert的重写
    3、MSDN中关于这部分的例子把Editor作为控件类的Attribute,造成理解上的困惑,
       实际可以直接应用在作为属性的struct或者class
      

  6.   

    可能是我原先没能完全理解楼主的意思。
    有关 TypeConverter 的重写,你可以参考以下帖:
    http://community.csdn.net/Expert/topic/3581/3581914.xml?temp=.6428644不必使用 struct 代替 Component,因为 struct 有相当的局限性。
    TypeEditor 是针对 UI 控件实现的可视化设计器,也有其用武之地。
      

  7.   

    www.dnc.com.cn  下一个日期控件源码看看就知道答案了