AutoEventWireup解释

AutoEventWireup解释这一事件聚合了当前页是否自动关联某些特殊事件。首先,从浏览器页面出发的事件不能立刻在本地得到处理,而是POST至服务器上,因此,asp.net建立了委托(代理)机制。在建立一个事件的同事,建立相应的委托。privatevoidInitializeComponent(){<spanstyle=”white-space:pre”> </span>t…

大家好,又见面了,我是你们的朋友全栈君。

这一事件聚合了当前页是否自动关联某些特殊事件。

首先,从浏览器页面出发的事件不能立刻在本地得到处理,而是POST至服务器上,因此,asp.net建立了委托(代理)机制。在建立一个事件的同事,建立相应的委托。

private void InitializeComponent()
{
<span style="white-space:pre">	</span>this.mybutton.Click += new System.EventHandler(this.Button1_Click);//委托
}

private void Button1_Click(object sender, System.EventArgs e)
{ 
//事件内容
}

委托将时间与该页面显示关联,在AutoEventWireup=”false”时,如果没有委托,事件将不执行。

这与早起VB采用的隐式事件挂起截然不同,各有利弊,但,asp.net中可以修改AutoEventWireup=”true”,使页面与某些特殊的实践方法绑定,自动识别这些具有特定名称的事件,而不需要进行委托。这些特定名称包括:Page_Init, Page_Load, Page_DataBind, Page_PreRender和Page_Unload等。比如:

private void Page_Load(object sender, System.EventArgs e)
{
//事件内容
}


针对这些事件方法,开发人员可以利用该参数避免编写过多的链接代码。如果该属性设置为false,则代码应该为:

private void InitializeComponent()
{ 
<span style="white-space:pre">	</span>this.mybutton,Click += new System.EventHandler(this.Button1_Click);//委托
<span style="white-space:pre">	</span>this.Load += new System.EventHandler(this.Page_Load);//可以用AutoEventWireup属性避免的委托
}

</pre><pre name="code" class="html">private void Page_Load(object sender, System.EventArgs e)
{
//事件内容
}
private void Button1_Click(object sender, System.EventArgs e)
{ 
//事件内容
}

一定不可以在没有委托的情况下使用Page_Load类似的方法!

大部分情况下,页面不需要关联如此多的特殊事件,会增加额外的操作和系统开销。同时,ASP.NET页框架自动调用事件处理的方法基于其预定名称,这会导致到相同事件处理方法当页运行被调用连词,也会增大系统开销。因此,Microsoft建议始终将AutoEventWireup设置为Fasle。

AutoEventWireup 属性的缺点是它要求页事件处理程序具有特定的、可预测的名称。这就限制了在命名事件处理程序方面的灵活性。

版权声明:本文为博主原创文章,未经博主允许不得转载。

转载于:https://www.cnblogs.com/PearlRan/p/4833029.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/140066.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • HADOOP生态圈知识概述

    HADOOP生态圈知识概述一.hadoop生态概况Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。具有可靠、高效、可伸缩的特点。Hadoop的核心是HDFS、YARN和Mapreduce。随着处理任务不同,各种组件相继出现,丰富Hadoop生态圈,目前生态圈结构大致如图所示:随着处理任务不同,各种组件相继出现,丰富Hadoop生态圈,目前生态圈结构大致如图所示:根据服务对象和层次分为:数据..

  • C++实现贪吃蛇(控制台)

    C++实现贪吃蛇(控制台)游戏介绍有一条蛇,在屏幕上爬,用上下左右键控制吃东西,吃得多了,到了一定积分,就能过关。越吃越长,不能碰墙,不能咬自己的尾巴,没了,哈哈。这个蛇是条很有个性的蛇它会吃多少吐多少(如果要取消这个特性可以在代码中修改一行代码即可,我已经标注出来了)话不多说直接上代码(代码中有详细注释)!可以直接运行的://本来我是想用C语言实现的无奈水平有限,只能在C++下执行了,注意:这里使用的字符集为Unicode#define_CRT_SECURE_NO_WARNINGS#include<s

  • mybatis的逆向工程怎么实现_mybatisinsert

    mybatis的逆向工程怎么实现_mybatisinsert1.什么是逆向工程mybatis官方提供逆向工程,可以针对单表自动生成mybatis执行所需要的代码(mapper.java、mapper.xml、pojo…)企业实际开发中,常用的逆向工程方式:由数据库的表生成java代码。注意:只能对单表进行操作2.逆向工程的作用myBatis逆向工程可以方便的从数据库中将表自动映射到JAVAPOJO类,并同时生成Mapper.xml和Mapper接…

  • 关于easy的短语(facemock框架)

    作为一个月薪3000的屌丝民工,今天也开始写自己的微博了,打发一下dota之外的时光。写了一年的flex,虽然很是熟练,但是有啥用呢。新版flash的普及上不去,旧版的渲染太慢。还是改行好了。最近开始研究有啥好的东西,之前看了一下unity3d,但是发现自己得先去学3dmax,可是看了3dmax发现高手实在太多了。要学好也不知道要多久,况且自己的美术功底实在太差。专研一下后台吧,发现自己编码解码不

  • Petshop4学习

    Petshop4学习Petshop4的研究分析:http://blog.csdn.net/sjklove/archive/2006/11/10/1377405.aspx1.项目概述与架构分析微软刚推出了基于ASP.NET2.0下的PetShop4,该版本有了一个全新的用户界面。是研究ASP.NET2.0的好范例啊,大家都知道,一直以来,在.NET和Java之间争论不休,到底使用哪个平台开发的企业级应用性…

    2022年10月17日
  • Linux Kernel 5.2 将进一步支持 AMD FreeSync

    Linux Kernel 5.2 将进一步支持 AMD FreeSync开发四年只会写业务代码,分布式高并发都不会还做程序员?>>>不久前发布的Linux5.0内…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号