2012-06-06 49 views
0

我不知道是否有代码的两个部分之间的任何差别:ASP.NET事件处理

//1 
    public partial class MyPage : System.Web.UI.Page 
    { 

    public override void DataBind() 
    { 
     base.DataBind(); 
     this.myTableGrid.SetupDataSource(); 
    } 

    } 

    //2 
    public partial class MyPage : System.Web.UI.Page 
    { 

    public void Page_DataBind(object e, EventArgs e) 
    { 
     this.myTableGrid.SetupDataSource(); 
    } 

    } 

回答

0

从本质上讲,它们都完成相同的任务。您的Page_DataBind方法将在base.DataBind()中调用,因此它可以节省少量(即可忽略不计)的cpu点击量,因为它不必调用方法委托。

示例2中的一个区别是您可以调用该方法,而无需在页面上调用DataBind()。

如果您的页面上有很多控件但只想绑定其中的一些控件(因为数据绑定可能被证明是昂贵的操作,因为它会大量使用反射和类型转换)。