ASP.NET内容incode id

时间:2010-04-01 10:29:52

标签: c# asp.net inline-code

我最近开始使用Masterpages,我想在代码中添加一个asp:Content标签。

所以我的内容页面标记代码是:

<%@ Page Language="C#" MasterPageFile="~/Template.Master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="ASP_Test_WebApp.Default" %>
<asp:Content id="TEST" ContentPlaceHolderID="Main" Runat="Server" />

所以现在我想将内容添加到“TEST”id incode。

但我的代码不承认TEST。如果我不使用母版页并且我为代码提供了一个id,那么我的代码会重新标记它,但是现在我开始使用的是母版页,但它没有。

我做错了什么?

2 个答案:

答案 0 :(得分:1)

Content标记本身没有任何用户界面,您需要在其中添加控件,然后您可以在代码中进行处理,例如。

<%@ Page Language="C#" MasterPageFile="~/Template.Master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="ASP_Test_WebApp.Default" %> 
<asp:Content id="TEST" ContentPlaceHolderID="Main" Runat="Server" >
    <asp:label runat="server" id="MyLabel"/>
</asp:content>

public partial class Default: System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        MyLabel.Text = "StackOverflow rocks!"
    }
}

答案 1 :(得分:0)

您不需要该ID。尝试添加以下内容:this.Controls.Add(mycontentcontrol)