page_load 事件

来源:百度知道 编辑:UC知道 时间:2024/05/31 06:00:47
public partial class DataBindingExpression : System.Web.UI.Page
{
//可供绑定的自定义方法
protected string ToUpper(string str)
{
return str.ToUpper();
}

protected void Page_Load(object sender, EventArgs e)
{
//进行数据绑定,对页面上的所有数据表达式求值
DataBind();
}
}

==================================================================================================================================
问题很简单 那就是为什么page_load和那个自定义的函数前面的访问修饰符是 protected 不是public private 什么的?

我的理解:
ASP.NET里将页面与代码分离了,例如:default.aspx和default.aspx.cs。
而其中采取的机制,是在aspx页面中继承其cs文件中定义的类,即cs代码文件中定义的类是对应网页的基类。
基类中的保护成员和公有成员是可以被子类访问的,而私有成员不行。为了使继承基类的页面中能够访问那些成员方法,如page_load等,则要把这些方法定义为保护成员。事实上,定义为公有成员应该也是可以的,只是不符合数据封装的原则。因些,默认的访问修饰符是protected。

sdf]