我在一个项目中,需要扩展一个服务器控件,TextBox

我定义 [TargetControlType(typeof(TextBox))]
    public class TextBoxExtender :ExtenderControl
    {.....}

然后就会出现添加扩展程序,如下图。这样的效果正是我所需要的。22.bmp

 

但是继承了ExtenderControl,所以TextBoxExtender 所在的Page必须要有ScriptManager,但是在我的项目中,没有使用Ajax,故不需要ScriptManager。所以我就让TextBoxExtender直接实现IExtenderControl接口。于是便定义成 

 [Designer(typeof(HyperLinkExtenderDesigner))]
    public class HyperLinkExtender : Control, IExtenderControl
    {...}

以为这样就应该可以了,事实上也是可以了的。但是总感觉用起没有实现ExtenderControl的舒服,因为实现IExtenderControl接口后,在使用TextBox时不会像继承IExtenderControl那样,出现添加扩展程序的。
园子里的朋友,请指教我要自己实现IExtenderControl,不从ExtenderControl继承,同时又不实现上图的效果,该如何做?

posted on 2008-08-12 17:01  rosanshao  阅读(983)  评论(1编辑  收藏  举报