在 ASP.Net C# 中手动添加页面事件处理程序

发布于 2024-07-30 11:08:22 字数 254 浏览 3 评论 0原文

当我过去构建应用程序时,我使用 AutoEventWireup 来处理页面事件。 据我所知,这会带来巨大的性能成本,我想在当前的应用程序中手动执行此操作。

设置事件处理程序的正确位置是什么?

我最初的想法是在我的代码隐藏文件中设置一个构造函数并在那里执行它,但我假设部分类的自动生成部分已经包含一个我将覆盖的构造函数。

很抱歉在这里问这么简单的问题。 看起来这应该很容易搜索,但我只是找不到我需要的答案。 先谢谢您的帮助。

When I've built applications in the past I've used AutoEventWireup to handle the page events for me. From what I've read this incurs a significant performance cost and I'd like to do it manually in my current application.

What is the correct place to set up the event handlers?

My initial thought was to just set up a constructor in my code behind file and do it there but I'm assuming that the auto generated portion of the partial class already contains a constructor that I'd be overriding.

I'm sorry to ask here on such a simple question. It seems like this should be easily searchable but I'm just not finding the answer I need. Thanks in advance for the help.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

掀纱窥君容 2024-08-06 11:08:22
protected override void OnPreInit(EventArgs e)
{
    base.OnPreInit(e);
    Load += new EventHandler(Page_Load);
}

对于控件来说,它是OnInit,因为它们没有OnPreInit。 老实说,我过去也曾对页面使用过 OnInit :)

当然,您可以对页面所需的所有事件执行上述操作,而不定义任何事件处理程序。

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

For controls it's OnInit, since they have no OnPreInit. To be honest I've used OnInit for pages as well in the past :)

Of course, you could just do the above for all the events you need for your page, and define no event handlers whatsoever.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文