有关 AutoEventWireup 属性的信息

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 814745
概要
本文介绍 AutoEventWireup 属性:
  • AutoEventWireup 是一个 boolean 类型的属性,用于指示在 Web 窗体页的事件是否 autowired。
  • AutoEventWireup 的默认值为 TRUE,并可以进行如下设置:
    • 当事件 autowiring 处于激活状态时,则为 TRUE。
    • 当事件 autowiring 未被激活时为 FALSE。
更多信息
在 Visual Studio.net 中或在 Visual Studio 2005 中,事件绑定到使用事件委托的事件处理程序方法。如果您使用 Web 窗体设计器 设计 Web 窗体,设计器将自动生成代码,以将事件绑定到它们的事件处理程序方法。

在 Visual Basic.net 中或 Visual Basic 2005 中,该设计器会执行此绑定的事件处理程序方法声明中使用 Handles 关键字。

下面的代码示例阐释了 Handles 关键字在 Visual Basic.net 中或 Visual Basic 2005 中:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
在 Visual C#.net,设计器生成一个显式事件委托:
this.Load += new System.EventHandler(this.Page_Load);
的 ASP.NET 页框架支持一种替代机制,用于在 Web 窗体页的 AutoEventWireup 属性会自动将页事件和事件处理程序方法相关联。如果 @ Page 指令的 AutoEventWireup 属性设置为 TRUE (或如果它未指定的这是因为其默认值为 TRUE),ASP.NET 页框架自动调用页事件处理程序方法。

例如对于 Page_InitPage_Load 事件处理程序方法由显式调用 ASP.NET 页框架,而无需使用 Handles 关键字或显式事件委托。

但是,使用 AutoEventWireup 属性会自动将页事件和它们的事件处理程序方法相关联的缺点是事件处理程序方法必须具有标准的、 预定义的名称。这就限制了事件处理程序方法的命名方式。

visual Studio.net 和 Visual Studio 2005 方法名上没有相同的限制。 在 Visual Studio.net 和可视有关 Studio 的 2005 年 AutoEventWireup 的默认设置为 FALSE。此外,设计器始终使用 Handles 关键字或显式事件委托来将事件绑定到它们的事件处理程序方法。如此一来,您可以使用事件处理程序方法的非标准的名称。

结束时

当您显式设置为 TRUE 的 AutoEventWireup 时,Visual Studio.net 或默认状态下的 Visual Studio 2005 将生成代码,以将事件绑定到它们的事件处理程序方法。一次 ASP.NET 页框架将自动调用事件处理程序方法根据其预定义的名称。 这可能导致当该页运行时被调用两次相同的事件处理程序方法。因此,Microsoft 建议始终 AutoEventWireup 为 FALSE 设置,在 Visual Studio.net 中工作时。
参考
有关详细的信息,请访问以下 MSDN 网站:

属性

文章 ID:814745 - 上次审阅时间:12/03/2007 18:50:42 - 修订版本: 3.5

MSDN 2003 Universal Edition, Microsoft .NET Framework 1.1, Microsoft .NET Framework 1.0, Microsoft Visual Studio 2005 Professional, Microsoft Visual Studio 2005 Standard Edition, Microsoft Visual Studio .NET 2003 Professional Edition, Microsoft Visual Studio .NET 2003 Enterprise Architect, Microsoft Visual Studio .NET 2003 Enterprise Developer, Microsoft Visual Studio .NET 2003 Academic Edition, Microsoft Visual Studio .NET 2002 专业版, Microsoft Visual Studio .NET 2002 企业级结构设计版, Microsoft Visual Studio .NET 2002 企业级开发版, Microsoft Visual Studio .NET 2002 Academic Edition, Microsoft .NET Framework 2.0

  • kbmt kbvs2005swept kbvs2005applies kbdesigner kbhelp kbdocs kbonline kbinetdev kbenv kbevent kbctrl kbcontrol kbwebforms kbprogramming kbdocerr KB814745 KbMtzh
反馈