为什么页面加载事件没有触发?
Why is Page load event not firing?
我的项目名称是 sbmanager 并且在那个项目中
我有一个名为 mgrGridHome.aspx 的页面
本页有以下参考:
<%@ Page Language="C#" Inherits="sbmanager.mgrGridHome" MasterPageFile="~/masterpages/global.master" %>
上面有一个标签:
<asp:Label id="lblCurrentTime" runat="server"></asp:Label>
在我的 mgrGridHome.aspx.cs 文件中,我有以下内容:
protected void page_load(object sender, EventArgs e)
{
lblCurrentTime.Text = "See Me";
}
但是当我编译和 运行 页面时,标签值没有设置,就好像页面加载没有触发一样。
但是如果我像这样将相同的代码直接放在页面上:
<script language="C#" runat="server">
public void Page_Load(object sender, EventArgs e)
{
<asp:Label id="lblCurrentTime" runat="server"></asp:Label>
}
</script>
标签值已设置。
我只想在页面加载时设置标签值。目前我不在乎它是否是 post-back。我是不是用错了方法?
从评论中移出 -
- 在页面添加 AutoEventWireup -
<%@ Page AutoEventWireup="true" ... %>
- 同时确保事件名称是
Page_Load
Win的回答解决了你的问题。但是为了改善其他有同样问题的人的答案:
如果你使用 AutoEventWireup="false"
确保你的代码中有这些行
public yourclassname()
{
Load += Page_Load;
}
我的项目名称是 sbmanager 并且在那个项目中 我有一个名为 mgrGridHome.aspx 的页面 本页有以下参考:
<%@ Page Language="C#" Inherits="sbmanager.mgrGridHome" MasterPageFile="~/masterpages/global.master" %>
上面有一个标签:
<asp:Label id="lblCurrentTime" runat="server"></asp:Label>
在我的 mgrGridHome.aspx.cs 文件中,我有以下内容:
protected void page_load(object sender, EventArgs e)
{
lblCurrentTime.Text = "See Me";
}
但是当我编译和 运行 页面时,标签值没有设置,就好像页面加载没有触发一样。
但是如果我像这样将相同的代码直接放在页面上:
<script language="C#" runat="server">
public void Page_Load(object sender, EventArgs e)
{
<asp:Label id="lblCurrentTime" runat="server"></asp:Label>
}
</script>
标签值已设置。
我只想在页面加载时设置标签值。目前我不在乎它是否是 post-back。我是不是用错了方法?
从评论中移出 -
- 在页面添加 AutoEventWireup -
<%@ Page AutoEventWireup="true" ... %>
- 同时确保事件名称是
Page_Load
Win的回答解决了你的问题。但是为了改善其他有同样问题的人的答案:
如果你使用 AutoEventWireup="false"
确保你的代码中有这些行
public yourclassname()
{
Load += Page_Load;
}