0
마스터 페이지에 표시되지 않습니다사용자 컨트롤은 내가 ASP.net에서 사용자 지정 사용자 컨트롤이
<%@ Reference Control="~/MenuButton.ascx" %>
<%@ Register Src="~/MenuButton.ascx" TagName="Menu" TagPrefix="button" %>
<ul runat="server" id="Menu"></ul>
012 :
using System;
public partial class MenuButton : System.Web.UI.UserControl
{
public String Link = "test.html";
public String Text = "TEST";
protected void Page_Load(object sender, EventArgs e)
{
}
}
MasterPage.master이있다MasterPage.master.cs
public List<MenuButton> Menus = new List<MenuButton>();
protected void Page_Load(object sender, EventArgs e)
{
foreach (var control in Menus)
{
Menu.Controls.Add(control);
}
}
Default.aspx를
Master.Menus.Add(new MenuButton { Text = "Test1", Link = "test1.html" });
그것은 심지어 그것이 무엇을해야하지만, 그냥 내 페이지에 표시되지 어떤 기능을 수행합니까 디버거 확인을 컴파일합니다. 내가 여기서 뭔가를 놓치고 있니?
감사합니다.
편집 1 :
내 마스터 페이지에하는 OnInit 무시하려:
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
foreach (var control in SousMenus)
{
SousMenu.Controls.Add(control);
}
}
또한 작동하지 않았다.
Default.aspx 내부에서 버튼을 추가하는 기능은 무엇입니까? Page_Load? – JustLoren
@JustLoren 예. – ademers
컨트롤 경로가 맞습니까? Page_Init을 사용하면 효과가 있습니다. –