飞翔的老鹰

net

博客园 首页 新随笔 联系 订阅 管理

初学ASP.NET就试了试手,先用.net2003自动生成了一个页面,然后照书上的例子写了如下的代码
<@ Page language=c# AutoEventWireup="false" Inherits="Chapter3.ch21" %>
<html>
<script language=c# runat=server>
void Page_Load(object sender, EventArgs e)
{
      lblMessage.Text="a HTML Contorl";
}
</script>
<body>
<form runat=server>
  <asp:label id=lblMessage runat=server />
</form>
</body>
</html>
运行后结果什么都不显示,怎么回事,然后我又调试了很久,还是什么都不显示。没办法,我采用了我的究级大法了,一点一点的删代码,看那里出了问题,当把AutoEventWireup="false"删掉后,一运行,终于有字符出现了(盼星星、盼月亮)。AutoEventWireup是什么意思,对该代码有什么影响了。我查了一下msdn

AutoEventWireup 指示页的事件是否自动连网。如果启用事件自动连网,则为 true;否则为 false
自动连网,这是什么意思,不明白,我又去google上搜了一下,查到了一个简单明白的回答:
如果 Page 指令的 AutoEventWireup 属性被设置为 true(或者如果缺少此属性,因为它默认为 true),该页框架将自动调用页事件,即 Page_Init 和 Page_Load 方法。在这种情况下,不需要任何显式的 Handles 子句或委托。

怪不得我得页面没有任何得显示,书上的例子也没错,书上的page指令是这样写的
<@ Page language="c#" Debug="true" %>
而我没有写该段代码,而直接使用了.net自动生成的代码(自动生成的将有AutoEventWireup="false"),因此导致了页面没有输出结果

posted on 2005-06-27 16:28  Terry  阅读(135)  评论(0编辑  收藏  举报