如
page_load()
{
if(!ispostback)
{
initform();
}
}
void initform()
{
page.controls.add(new datagrid) //添加一个datagrid控件
}
button_onclick()
{
这里来获取添加的那个控件
}
--------------------------------------------
上面当page首次load的时候会添加一个datagrid
但当button_onclick时因为现在已经是postback
所以没有执行initform也就没有添加那个datagrid
所以onclick得不到datagrid
问:
如何在程序中add进来一个页面后
postback后那个控件还存在
PS:不在要page_load中再次添加谢谢
page_load()
{
if(!ispostback)
{
initform();
}
}
void initform()
{
page.controls.add(new datagrid) //添加一个datagrid控件
}
button_onclick()
{
这里来获取添加的那个控件
}
--------------------------------------------
上面当page首次load的时候会添加一个datagrid
但当button_onclick时因为现在已经是postback
所以没有执行initform也就没有添加那个datagrid
所以onclick得不到datagrid
问:
如何在程序中add进来一个页面后
postback后那个控件还存在
PS:不在要page_load中再次添加谢谢
如果要保存控件状态的话,可能需要加在init中。
你可以看一下控件的生命周期的相关文章。
实际上,是你每次请求一个页面,这个页面都是重新 new 一个出来,你说不加能行迈?
如果要保存控件状态的话,可能需要加在init中。
你可以看一下控件的生命周期的相关文章。学习
up1楼的观点
page_load()
{
if(!ispostback)
{
initform();
}
}
void initform()
{
page.controls.add(new datagrid) //添加一个datagrid控件
}
button_onclick()
{
这里来获取添加的那个控件
}--------------------------
如
page_load()
{
if(!ispostback)
{
}
initform(); //既然楼主每次都要得到就放置在Page_Load中 不要限制在IsPostBack中这样就可以避免。因为每次触发服务器端时间时候都要加载Page_load 第二次的时候 由于add哪些控件是你new出来的 所以第二此没有继续new就不会保存在页面上
}
void initform()
{
page.controls.add(new datagrid) //添加一个datagrid控件
}
button_onclick()
{
这里来获取添加的那个控件
}