母版页是';t在postBack上正确加载
本文关键字:postBack 加载 母版页 | 更新日期: 2023-09-27 18:26:44
首先,我是asp.net的新手(几天的经验)。我正在使用Visual Studio 2013提供的默认内容来处理Web窗体应用程序。
场景:单击按钮后,我想更改组胺(h2)的文本。
问题:我正在使用Visual Studio提供的默认母版页,但它没有在postBack上正确加载。根据我的判断,它用于布局的资源无法访问?我不完全确定我做错了什么。如果有人能启发我,我将不胜感激
到目前为止我的代码:
Default2.aspx:
<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>
<asp:Content runat="server" ContentPlaceHolderID="MainContent">
<h2 id="h1" runat="server">Change me please.</h2>
<asp:Button ID="b1" Text="Submit" runat="server" OnClick="dothis" />
</asp:Content>
默认2.aspx.cs:
public partial class Default2 : Page
{
protected void dothis(object sender, EventArgs e)
{
Header.InnerHtml = "Hello world.";
}
}
请参阅服务器端(C#、ASP.NET)的change html标记文本,了解需要实现的代码。在您的情况下:
h1.InnerHtml = "Hello";
作为一种替代方案,您可以在头标记中包装标签或文字控件之类的东西,而不是使用<h2>
服务器控件,如下所示:
<h2><asp:LiteralControl runat="server" id="HeaderLiteral">Change me please</asp:LiteralControl></h2>
然后在你身后的代码中,你可以这样做:
HeaderLiteral.Text = "Hello World!";
个人偏好,但我通常回避服务器控制。没有特别的原因,但为了完整起见,提出了这个建议。