假设您的 Web 表单中有一个 Button,OnClick 绑定到一个代码隐藏事件。
然后,通过将该按钮添加到母版页中控件的 Controls 集合中,将该按钮向上移动到母版页中。 这是在运行时的 Page_Load 事件中完成的。
OnClick 事件现在绑定在哪里?仍然是 Web 表单的代码隐藏,还是正在查看母版页的代码隐藏?
我就是这样做的,现在我的按钮什么也没做。它发回页面,但实际上并没有在代码隐藏中运行绑定事件。
在这两种情况下,我都检查了按钮的 HTML。唯一改变的是 ID 和名称,以反映命名容器的变化:
在 Web 表单中(“MainContent”是一个 ContentPlaceholder):
<input type="submit" id="ctl00_MainContent_DeleteButton" value="Yes, Delete" name="ctl00$MainContent$DeleteButton"/>
在母版页中:
<input type="submit" id="ctl00_DeleteButton" value="Yes, Delete" name="ctl00$DeleteButton"/>
我已经运行了调试器,并且可以确认它不再接触绑定事件。
是将其绑定到事件的 ID 还是名称?如果是这样,我将其移至母版页会破坏此绑定吗?