5

我们是否必须做一些特殊的事情才能让 ASP.NET 部分类知道在我们的用户控件的基类中声明的控件?部分类不断为基类中的控件生成声明,这意味着基类中的控件被隐藏并且为空。

4

1 回答 1

7

CodeFileBaseClass 属性可应用于@Page@Control声明,以使 ASP.NET 运行时了解基类中声明的任何控件。

MSDN 是这样描述的:

指定页面的基类及其关联的代码隐藏类的类型名称。

此属性是可选的,但在使用时,CodeFile 属性也必须存在。当您想要实现共享场景时使用此属性,您可以在基类中定义公共字段(以及可选的关联事件)以引用网页中声明的控件。由于 ASP.NET 代码生成模型,如果您在基类中定义字段而不使用此属性,则在编译时将为网页中声明的控件生成新的成员定义(在单独的部分类存根中),而你想要的场景将不起作用。但是如果你使用 CodeFileBaseClass 属性将基类与页面关联起来,基类中的字段将能够在代码生成后引用页面上的控件

于 2010-03-08T15:07:27.967 回答