似乎可以这样解释:
.ascx的User Control就相当于在页面中直接加入一段HTML代码,又.ascx自己来控制执行。
在使用这个控件的页面中,不能对其进行操作。我们可以看到,在每个页面代码中,类名称下面都有很多声明为protected的变量,这些就对应页面上的可操作的控件。
而一个.ascx的User Control是不生成这样的变量的。如果你要在代码里控制这个控件,你可以把它做成一个Class,继承DataGrid,或者动态添加一个DataGrid。
.ascx的User Control就相当于在页面中直接加入一段HTML代码,又.ascx自己来控制执行。
在使用这个控件的页面中,不能对其进行操作。我们可以看到,在每个页面代码中,类名称下面都有很多声明为protected的变量,这些就对应页面上的可操作的控件。
而一个.ascx的User Control是不生成这样的变量的。如果你要在代码里控制这个控件,你可以把它做成一个Class,继承DataGrid,或者动态添加一个DataGrid。
还是Class可操作性比较高。:)
protect YourNamespace.CustomDataGrid CustomDataGrid1;
就可以了。
谢谢你,不过你的CustomDataGrid不也是一个Class吗?
我制作ascx都是直接拖一个已有的Web Control,然后在它的基础上直接制作的。