欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

asp.net自定义控件回发数据实现方案与代码

程序员文章站 2024-03-04 23:46:30
在实现asp.net的自定义控件中,若要实现数据的回发或者post数据,那自义控件必须实现ipostbackdatahandler接口, 在该接口中有两个方法一个是load...
在实现asp.net的自定义控件中,若要实现数据的回发或者post数据,那自义控件必须实现ipostbackdatahandler接口, 在该接口中有两个方法一个是loadpostdata,另一个是raisepostdatachangedevent。第一个方法用于在回发数据时,填充自定义控件的相关属性,第二个方法用于激发控件相关的事件。也就是说这两个方法,应该是在提交数据的时候进行调用的。

可是,我们在实现自己的控件时,虽然继承了 ipostbackdatahandler,但是在提交数据的时候确发现程序没有去调用 ipostbackdatahandler 中的方法。经过研究发现,若要实现数据回发,除了需要实现ipostbackdatahandler接口外,还需要将控件注册成需要回发数的控件。要实现注册,就是在自定义控件里重写onprerender方法,并在该方法中调用page.registerrequirespostback(this);这句代码。写法如下:

复制代码 代码如下:

public class mycontrol : webcontrol, ipostbackdatahandler{

protected override void onprerender(eventargs e)
{
page.registerrequirespostback(this);

base.onprerender(e);
}

}

通过实现以上代码,当在提交数据时,就会发现ipostbackdatahandler接口的方法,就被调用了。接下来,怎么做,你懂的啊。