小议AutoEventWireup属性

小议AutoEventWireup属性1.在web页面添加一个label和button控件ViewCode<%@PageLanguage=”C#”AutoEventWireup=”false”CodeFile=”AutoEventWireup属性.aspx.cs”Inherits=”_Default”%><!DOCTYPEhtmlPUBLIC”-//W3C//DT…

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

1.在web 页面添加一个label和button控件

小议AutoEventWireup属性
小议AutoEventWireup属性
View Code

<%@ Page Language="C#" AutoEventWireup="false" CodeFile="AutoEventWireup属性.aspx.cs"
    Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Label ID="Label1" runat="server" Text="为什么不显示" BackColor="Blue" ForeColor="Red"></asp:Label>
    </div>
    <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
    </form>
</body>
</html>

 

在codebehind里的Page_Load事件中改变lable的text值,this.Label1.Text = “为什么没改变”;

结果:label的值还是“为什么不显示”,为什么我在Page_Load事件中改变lable的text值没起作用呢?原因很简单:前台页面中存在 AutoEventWireup=”false”,不会自动加载Page_Load()方法

如果 AutoEventWireup=”true”,会自动加载Page_Load()事件,label的值会改变成”为什么没改变”。

还有一种方法可以使得在AutoEventWireup=”false”时,可以加载Page_Load()方法:那就是必须手动重写OnInit()方法,在里面显示的给Load事件委托Page_Load()方法,

代码如下:

 protected override void OnInit(EventArgs e)
    {
        base.OnInit(e);
        this.Load += new System.EventHandler(this.Page_Load);//显示的利用委托注册Load事件
    }

下面用到msdn上的话进行总结:

AutoEventWireup获取或设置一个值,该值指示 ASP.NET 页的事件是否自动连接到事件处理函数。AutoEventWireuptrue 时,ASP.NET 不要求您将事件处理程序显式绑定到页事件,如 Load ;为false,则反之。

 

注意下列有关将事件绑定事件处理程序的内容:

 

  • 如果将 AutoEventWireup 设置为 true,请确保不会同时将页事件处理程序手动附加到事件。如果这样做,则可能多次调用处理程序。

  • 只为页面事件执行自动绑定,而不为页面上的控件的事件执行。

  • 作为将事件绑定至句柄的另一个选择,可覆盖页面或控件的 Oneventname 方法。

 

 msdn连接地址:http://msdn.microsoft.com/zh-cn/library/system.web.configuration.pagessection.autoeventwireup.aspx

 

转载于:https://www.cnblogs.com/leofly/archive/2012/09/09/2677365.html

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

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

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

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

(0)


相关推荐

  • 3分钟搞定下载微信视频号视频!无需第三方软件,亲测有效!

    3分钟搞定下载微信视频号视频!无需第三方软件,亲测有效!2020年是视频号的元年,现在2021视频号还处在发展初期,但是它的潜力是巨大的,将来的价值会超过抖音。你在视频号上点赞的视频,你的好友都会看到,这一点非常有利于营销推广。但抖音上的粉丝和微信联系人是割裂的,我们所有的社交关系都在微信上。但是视频号的短视频内容无法像抖音、快手一样,保存本地或者复制作品链接进行解析下载。有没有其他小技巧能绕过视频号未完善的功能,直接保存视频内容呢?当然有,请记住一句话,在android的系统中,视频是所见即所得本文只针对android系统,不需要借助任何第三方软件,

  • JAVA协同过滤推荐算法

    1、什么是协同过滤在推荐系统众多方法中,基于用户的协同过滤推荐算法是最早诞生的,原理也较为简单。该算法1992年提出并用于邮件过滤系统,两年后1994年被GroupLens用于新闻过滤。一直到2000年,该算法都是推荐系统领域最著名的算法。在一个在线个性化推荐系统中,当一个用户A需要个性化推荐时,可以先找到和他有相似兴趣的其他用户,然后把那些用户喜欢的、而用户A没有听说过的物品推荐给A。…

  • datagrip永久激活(JetBrains全家桶)

    (datagrip永久激活)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

  • Pytest(13)命令行参数–tb的使用

    Pytest(13)命令行参数–tb的使用前言pytest使用命令行执行用例的时候,有些用例执行失败的时候,屏幕上会出现一大堆的报错内容,不方便快速查看是哪些用例失败。–tb=style参数可以设置报错的时候回溯打印内容,可以设置参

  • sublime 插件安装packagecontrol

    sublime 插件安装packagecontrol

  • ssl数字证书是什么意思_数字证书的内容是

    ssl数字证书是什么意思_数字证书的内容是本文转自 http://seanlook.com/2015/01/15/openssl-certificate-encryption/SSL/TLS介绍见文章 SSL/TLS原理详解。如果你想快速自建CA然后签发数字证书,请移步 基于OpenSSL自建CA和颁发SSL证书 。首先简单区分一下HTTPS、SSL、OpenSSL三者的关系:SSL是在客户端和服务器之间建立

发表回复

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

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