请问各位,我在一个控件中自定义了一个property,我把这个属性的类型设置为一个自定义的object,问题来了,这样在写代码的时候可以设置他的值,但是如何在用户在design画面把这个控件拖到form上后,可以可视化的编辑这个属性,需要在这个property定义的地方加上Attribute或者其他什么吗

解决方案 »

  1.   

    vs2005没有支持object属性的编辑器,所以属性出得来,但是跟tag域一样,只能输字符串,想要把属性展示出来很简单,比如string型的可以用private string property=string.empty;
    public string Property
    {
    set{property=value;}
    get{return property;}
    }
      

  2.   

    给你要编辑的属性设计好编辑的窗口,然后定制一个UITypeEditor类,指定用你定义的窗口处理此属性。给你的属性加上EditorAttribute,把UITypeEditor类绑定到属性上,这样在PropertyGrid里,选定这个属性时,会显示那个有3个点的小按钮,按这个按钮就可以激活编辑窗口。
    具体看看MSDN里UITypeEditor的内容吧。