TextBox失去焦点也可以引发服务端事件

在Web应用当中!我们往往会用到很多TextBox来处理录入的信息。

在页面提交之前,在TextBox失去焦点的时候,可能就是要处理一下我们输入的信息。

比如:

1、对输入信息的校验

2、根据输入的信息对后面即将录入的信息的不同处理

3、需要回到服务端处理

等等...

基于这些要求啊!给TextBox加上OnBlur 的服务端事件就可以了!如图:

![](http://dev.csdn.net/article/31/C:/Documents and Settings\Administrator.HL\My Documents\Snap2.gif)

服务端就会自动生成根onclick一样事件

this.MyTextBox.OnBlur += new System.EventHandler(this.MyTextBox_OnBlur);

这个控件主要的地方就是,继承TextBox,和IPostBackEventHandler接口!公开OnBlur事件就可以了!

完整的代码如下:

using System;

namespace Region.Controls
{

public class PostBackTextBox : System.Web.UI.WebControls.TextBox,System.Web.UI.IPostBackEventHandler

{
protected override void Render(System.Web.UI.HtmlTextWriter writer)
{
Attributes["onblur"] = Page.GetPostBackEventReference( this );
base .Render (writer);
}

public event EventHandler OnBlur;

public virtual void RaisePostBackEvent( string eventArgument)
{
if (OnBlur != null)
{
OnBlur( this , null );
}

}

}
}

Published At
Categories with Web编程
Tagged with
comments powered by Disqus