Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 在ascx中分配事件处理程序与在codebehind中分配事件处理程序之间有什么真正的区别吗?_Asp.net - Fatal编程技术网

Asp.net 在ascx中分配事件处理程序与在codebehind中分配事件处理程序之间有什么真正的区别吗?

Asp.net 在ascx中分配事件处理程序与在codebehind中分配事件处理程序之间有什么真正的区别吗?,asp.net,Asp.net,以下各项之间是否存在行为差异: <asp:Repeater ID="myRepeater" runat="server" OnItemDataBound="myRepeater_ItemDataBound"> </asp:Repeater> 不,执行没有区别,因为实际上,当您在ascx中分配它时,它实际上是在.designer.cs文件(假设您使用的是设计器)或编译的临时文件(如果使用后台编译)的“幕后”中写入代码的 他们都做同样的事情。但是aspx版本可以由GUI设计

以下各项之间是否存在行为差异:

<asp:Repeater ID="myRepeater" runat="server" OnItemDataBound="myRepeater_ItemDataBound">
</asp:Repeater>

不,执行没有区别,因为实际上,当您在ascx中分配它时,它实际上是在.designer.cs文件(假设您使用的是设计器)或编译的临时文件(如果使用后台编译)的“幕后”中写入代码的


他们都做同样的事情。但是aspx版本可以由GUI设计器处理。

根据页面生命周期,在ascx和codebehind中分配事件处理程序没有区别

初始化所有控件后页面提升的
Page_Init
。因此,用户控件也是页面的控件


请查看MSDN上的详细信息。

如果在代码隐藏中指定了私有方法,则可以使用私有方法。不能在aspx/ascx中分配私有方法。我想到了这一点

    protected void Page_Load(object sender, EventArgs e)
    {
        myRepeater.ItemDataBound += new RepeaterItemEventHandler(myRepeater_ItemDataBound);
    }