Master模板的ASPX页面动态添加控件

平时我们在不用模板页的ASPX页面的后台动态添加控件是这样写的:
page.Controls.Add(gviewProduct)
今天遇到这样一个问题:在带有master模板的页面里不能用动态添加控件

原来的错误代码是这样写的:
GridView gviewProduct = new GridView();
gviewProduct.ID = "Product";
this.FindControl("cphContent").Controls.Add(gviewProduct);

提示错误:
异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。
this.FindControl("cphContent").Controls.Add(gviewProduct);

修改后的正确代码:

 GridView gviewProduct = new GridView();
 gviewProduct.ID = "Product";
 Master.FindControl("cphContent").Controls.Add(gviewProduct);

总结:this 关键字将引用类的当前实例。静态成员函数没有 this 指针。this 关键字可用于从构造函数、实例方法和实例访问器中访问成员。

posted on 2007-05-22 10:29  蹲在路边写代码  阅读(517)  评论(0编辑  收藏  举报

导航