首页 新闻 会员 周边

控件设置的问题??

0
悬赏园豆:5 [已关闭问题]

做一个小控件。

继承BUTTON

想设他的TEXT属性为"确定(&E)".

可生成的控件的名字都总是显示为BUTTON1之类的有没有方法可以让TEXT属性不更改。。

秋色的主页 秋色 | 初学一级 | 园豆:47
提问于:2008-09-18 00:29
< >
分享
其他回答(3)
0

override了Render()方法?

丁学 | 园豆:18730 (专家六级) | 2008-09-18 07:25
0
Code
[Bindable(true), Category("Appearance"), DefaultValue("确定(&E)")]
public string Text
{
get
{
object obj = ViewState["ButtonText"];
return obj == null ? "确定(&E)" : (string)obj;
}
set
{
ViewState[
"ButtonText"] = value;
}
}
        protected override void Render(HtmlTextWriter output)
        {
       output.Write("这里要把this.Text写进去");
   }
zjy | 园豆:3194 (老鸟四级) | 2008-09-18 09:03
0

这种时候不建议继承自Button,组合优于继承,可以自己写个控件,包装一个Button,将各属性全部通过Button代理出来,只有Text属性设为只读就行了,所有的方法也都直接调用被包装的Button的

其实应该用用户控件来做嘛

Gray Zhang | 园豆:17610 (专家六级) | 2008-09-18 09:10
0

动态控件的制作确实比较麻烦,只有学习不断深入才行。对绕的代码有点疑问,有必要更改

       protected override void Render(HtmlTextWriter output)
        {
       output.Write("这里要把this.Text写进去");
   }

吗?既然更改了属性 Text  的实现(override?new?),是不是 Render  的时候直接调用父实现就可以了?如果属性 Text 不是 override 而是 new,我在想,在给 Text 赋值的时候,是否要进行 base.Text = value  操作。

陛下 | 园豆:3938 (老鸟四级) | 2008-09-18 10:08
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册