我的程序结构:主要看第二个1.一个aspx页面,里面有一个Button
代码是:private void btnNext_Click(object sender, System.EventArgs e)
{
TemplateForm1.DrawFormByTemplateID(1);
}已声明TemplateForm1(protected TransactionMonitoring.Controls.TemplateForm TemplateForm1;)2.TemplateForm.ascx(里面有一个Button2)
基本代码是:public void DrawFormByTemplateID(int num)
{
int i=0; //批量生成下拉列表控件
For(;i<num;i++)
{
DropDownList ddl = new DropDownList();
ddl.ID="ddlValue"+i;
....
}
}private void Button2(object sender, System.EventArgs e)
{
//取ddl的id
...=((DropDownList)Page.FindControl("ddlValue"+i)).ID;
//这里就会出错 说是“未将对象引用设置到对象的实例”
}请问是什么问题?我把DrawFormByTemplateID()里的语句放到Page_Load()里就可以,可是这样又达不到效果请问该怎么解决?谢谢了!
代码是:private void btnNext_Click(object sender, System.EventArgs e)
{
TemplateForm1.DrawFormByTemplateID(1);
}已声明TemplateForm1(protected TransactionMonitoring.Controls.TemplateForm TemplateForm1;)2.TemplateForm.ascx(里面有一个Button2)
基本代码是:public void DrawFormByTemplateID(int num)
{
int i=0; //批量生成下拉列表控件
For(;i<num;i++)
{
DropDownList ddl = new DropDownList();
ddl.ID="ddlValue"+i;
....
}
}private void Button2(object sender, System.EventArgs e)
{
//取ddl的id
...=((DropDownList)Page.FindControl("ddlValue"+i)).ID;
//这里就会出错 说是“未将对象引用设置到对象的实例”
}请问是什么问题?我把DrawFormByTemplateID()里的语句放到Page_Load()里就可以,可是这样又达不到效果请问该怎么解决?谢谢了!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货