题目写的很清楚。代码如下。 for (int i = 1; i <= this.ListBox1.Items.Count; i++)
{
Table autoTable = new Table(); //初始化表
this.Page.Controls.Add(autoTable);
autoTable.ID = i.ToString(); //
autoTable.CssClass = "table";
Response.Write(autoTable.ID);
}这是动态添加多个表,并且设置了ID属性,便于后边findcontrol。 for (int i = ListBox1.Items.Count; i <= ListBox1.Items.Count; i++)
{
int indexItem = this.ListBox1.Items.IndexOf(this.ListBox1.Items.FindByText(last.GetValue(5).ToString()));
Table mytable = (Table)FindControl((indexItem + 1).ToString());
TableRow rows = new TableRow();
rows.Cells.Add(tCell);
mytable.Rows.Add(rows);
Response.Write(mytable.ID); }这是后边找到这个控件并且赋值添加cell和rows的。但是提示未将对象引用到实例。跟踪单步之后发现。
mytable值为NULL,也就是未找到控件。但是为什么不报错呢?还有运行之后竟然把值都加到一个表里边了。我生成的三个表只有一个用上了。
{
Table autoTable = new Table(); //初始化表
this.Page.Controls.Add(autoTable);
autoTable.ID = i.ToString(); //
autoTable.CssClass = "table";
Response.Write(autoTable.ID);
}这是动态添加多个表,并且设置了ID属性,便于后边findcontrol。 for (int i = ListBox1.Items.Count; i <= ListBox1.Items.Count; i++)
{
int indexItem = this.ListBox1.Items.IndexOf(this.ListBox1.Items.FindByText(last.GetValue(5).ToString()));
Table mytable = (Table)FindControl((indexItem + 1).ToString());
TableRow rows = new TableRow();
rows.Cells.Add(tCell);
mytable.Rows.Add(rows);
Response.Write(mytable.ID); }这是后边找到这个控件并且赋值添加cell和rows的。但是提示未将对象引用到实例。跟踪单步之后发现。
mytable值为NULL,也就是未找到控件。但是为什么不报错呢?还有运行之后竟然把值都加到一个表里边了。我生成的三个表只有一个用上了。
解决方案 »
- 添加用户控件缓存依赖项发生的异常?高手指正。
- 小白求教:asp.net 使用ewebeditor文本编辑器?
- 请教一个关于asp.net ajax(atlas)的简单问题?
- ajaxpro乱码问题.
- 请教:在WEB项目中有什么比较好的方式统一处理异常和登陆超时?
- 在定制控件中如何捕获DropDownList控件的SelectedIndexChanged事件?
- 微软人俱乐部
- 求datagrid编程方面的资料,我不要那种简单的绑定哈。还在微软的基础教程哈,我想要能够动态控制,显示,datagrid里面的数据的资料。
- 让人发疯的问题,请求大家帮忙!关于System.Data.SqlClient.SqlException
- jmail4问题:上网要用代理服务器,用jmail组件发送邮件如何设置代理?
- asp.net 获得上传文件的大小
- 获取xml节点内容
如有不对,仅供参考,轻喷。
我不会喷你的。都是来帮忙的。不管解决没解决。
我以前有个动态添加的是Label,但是不用添加runat属性在后台就能直接findcontrol并且能改变它的属性。
如果我动态添加和查找是在一个事件内进行的呢?比如一个button_click事件内写的?
for (int i = 0; i < 3; i++)
{
Table table = new Table();
table.ID = i.ToString();
this.Controls.Add(table);
}
for (int i = 0; i < 3; i++)
Response.Write(this.FindControl(i.ToString()).ID + "<br/>");
没发现什么问题啊,能找到table。
http://www.cnblogs.com/insus/archive/2011/12/01/2270455.htmlhttp://www.cnblogs.com/insus/archive/2012/10/29/2744769.html