asp.net(C#)动态加载同一个目录里的两个用户控件(不是同时),一个正常,一个不正常
动态加载的控件,本意是数据库里有几条记录就显示几个控件的,为什么同在一个目录下的两个用户控件,一个是数据库里有几条记录,就显示几个控件,而另一个是只显示一个控件呢?OracleDataReader odr = DB.mycmd("select * from pet");
TableRow tr = new TableRow();
while (odr.Read())
{
i = i + 1;
TableCell tc = new TableCell();
Control GS = (Control)this.LoadControl("usercontrol\\aaa.ascx");
tc.Controls.Add(GS);
tr.Controls.Add(tc);
//if (i % this.Rownum == 0)
this.Table1.Rows.Add(tr);
Response.Write("<br><br>abcde</br></br>");
//tr = new TableRow();
上面这段程序只能在主页面显示一个用户控件.
OracleDataReader odr = DB.mycmd("select * from pet");
TableRow tr = new TableRow();
while (odr.Read())
{
i = i + 1;
TableCell tc = new TableCell();
Control GS = (Control)this.LoadControl("usercontrol\\header.ascx");
tc.Controls.Add(GS);
tr.Controls.Add(tc);
//if (i % this.Rownum == 0)
this.Table1.Rows.Add(tr);
Response.Write("<br><br>abcde</br></br>");
//tr = new TableRow();
上面这段程序就能在主页面显示出多个用户控件来.同样是这段程序只换一个控件,就能显示出多个控件来.
Control GS = (Control)this.LoadControl("usercontrol\\header.ascx");
--------------------编程问答-------------------- 那要看你的别一个控件是怎么处理的. --------------------编程问答-------------------- OracleDataReader odr = DB.mycmd("select * from pet");
TableRow tr = new TableRow();
while (odr.Read())
{
i = i + 1;
TableCell tc = new TableCell();
Control GS = (Control)this.LoadControl("usercontrol\\aaa.ascx");
tc.Controls.Add(GS);
tr.Controls.Add(tc);
//if (i % this.Rownum == 0)
this.Table1.Rows.Add(tr);
Response.Write(" <br> <br>abcde </br> </br>");
tr = new TableRow();// 迭代需要重新 new
补充:.NET技术 , ASP.NET