asp.net从一开始就没按OOP规范来 太可惜了从 Page_Load开始

我突然才发现  protected void Page_Load(object sender, EventArgs e) 被自动调用的时候却找不到 调用 的地方,天拉,记得1.1的时候  在代码里看得到 this.Load += new System.EventHandler(this.Page_Load); 这样证句,在2.0里却找不到了, 
也就是说 页面调用 完全 是一种约定,代码里看不到了,天拉这又在违反面向对象规则,微软又想走MFC的老路 ,又在标准里加私货.真是痛心 
在1.1的时候看得到类页面的一大堆初始化代码,虽然看起多杂,看是复合面象对象要求, 而Page_Load相当于系统回调,正确的用法应该是 protected override void Page_Load 这样才对,覆盖基类的方法,这样才能被调用,可是甚至这样写 
private void Page_Load 都通得过 能正常调用 执行  private void Page_Init 大家看看 私有方法啊,哪来的私有方法没被初始化事件就调用 ,太恶心了,代码里没有初始化代码,外面竟然能调用私有方法,这种约定又想把.NET 搞成MFC那种下场
---------------
我怎么知道是在页面加载时执行?如果不看书 不看MSDN的话? 这是一种硬约定吧?其它完全没必要这么做,微软为什么要这么做呢?有人给我讲讲,这样做完全不规范,其它微软完全可以这样,这样很很明了了啊 或者在ASPX 文件里加一句 DocumentInit="Page_Load" 

 protected override void OnInit(EventArgs e)
    
{
        
base.OnInit(e);
        
this.Load += new EventHandler(Page_Load);
    }



可是这些都看不到,完全凭微软自己硬性约定调用,好好的OOP 又被微软搞乱了 ,我真希望 我错了
请使用浏览器的分享功能分享到微信等