首页 > 开发 > 综合 > 正文

最简单的自定义控件

2024-07-21 02:24:26
字体:
来源:转载
供稿:网友
asp.net提供自定义控件的机制,本文记叙生成一个简单自定义控件的方法。

一般地,web页面处理发生错误时,可以在页面上显示错误信息,也可以通过javascript的alert提示信息。在asp.net中实现alert的一种方法是定义自定义控件。 小鸡射手的promptcontrol实现如下,实在算是最简单的自定义控件啦,:-)

[defaultproperty("message"), toolboxdata("<{0}:promptcontrol runat=server>")]
[designer(typeof(promptcontroldesigner))]
public class promptcontrol : system.web.ui.webcontrols.webcontrol
{
private string message;

[bindable(true), category("appearance"), defaultvalue("")]
public string message {
get { return message; }
set { message = value; }
}
protected override void render(htmltextwriter output)
{
if(message!=null && message.length>0) {
output.write(" ");
}
}
}

public class promptcontroldesigner : controldesigner
{
public override string getdesigntimehtml() {
return "promptcontrol";
}
}

生成控件后,可以将其加到工具箱中,自定义控件和任何其他控件一样可以drag到设计窗口,并可以在属性窗口中编辑message属性,当然在程序中设置message也完全可以啦。对于较复杂的自定义控件,主要是增加postback事件的处理,包括:

getpostbackclientevent()生成client的postback的script
如以前的blog用户控件中定义事件描述定义事件
实现raisepostbackevent()方法。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表