波斯马BOSSMA Information Technology

复合控件中DropDownList控件状态保存的问题

发布时间:2008年3月11日 / 分类:ASP.NET / 23,871 次浏览 / 评论

在复合控件的开发过程中,遇到这样一个问题:按照一般的复合控件的开发流程,在CreateChildControl中创建控件,在OnPreRender中绑定DropDownList的数据,结果在回发时总是不能保存选择的状态。

在网上看到一些文章,说要把控件的创建放到OnInit方法中,一开始没搞清楚怎么改,难道要把控件创建的代码挪到OnInit中。

在尽量少的修改的前提下,我采用了这样的方法:

 protected override void OnInit(EventArgs e)
        {
            EnsureChildControls(); //检查子控件是否已经创建,否则创建
            BindData(); //你的绑定数据的方法
            base.OnInit(e);
        }

OnInit方法执行要提前于OnPreRender。
不知道是不是其它的控件在回发时要保持状态,也要这样写。

本博客所有文章如无特别注明均为原创。
复制或转载请以超链接形式注明转自波斯马,原文地址《复合控件中DropDownList控件状态保存的问题

关键字:

建议订阅本站,及时阅读最新文章!
【上一篇】 【下一篇】

发表评论