好吧,您只有一组有限的 html 项目作为选择。HREF、INPUT TYPE="BUTTON" 或 INPUT TYPE="SUBMIT"。
通常菜单是用 A 标签实现的。
当然,有些网站只是简单地对几乎所有导致回发/页面加载的内容应用一点 onclick javascript 优点。
尽管只需打开您喜欢的网站并检查它的 html,您可能会得到更好的服务。
简单输出:
<ul>
<li><a href="home.aspx">Home</a></li>
<li><a href="Accounts.aspx">Accounts</a></li>
<li><a href="Logout.aspx">Log Off</a></li>
</ul>
在您的菜单控件中:
<asp:Repeater id="MenuRepeater">
<headertemplate>
<ul>
</headertemplate>
<itemtemplate>
<li><a href='<%# ((DataRowView)Container.DataItem)["PageFile"]%>'><%# ((DataRowView)Container.DataItem["DisplayName"]%></a></li>
</itemtemplate>
<footertemplate>
</ul>
</footertemplate>
</asp:Repeater>
代码背后:
protected void Page_Load(object sender, EventArgs e) {
// have something load a datatable with your page file and display name references
MenuRepeater.DataSource = GetMenu();
MenuRepeater.DataBind();
}
protected void DataTable GetMenu() {
// you would normally pull this from a database, this is here
// only to show the idea.
DataTable menu = new DataTable();
menu.Columns.Add("PageFile", typeof(String));
menu.Columns.Add("DisplayName", typeof(String));
DataRow row = menu.NewRow();
row["PageFile"] = "home.aspx";
row["DisplayName"] = "Home";
menu.Rows.Add(row);
row = menu.NewRow();
row["PageFile"] = "Accounts.aspx";
row["DisplayName"] = "Accounts";
menu.Rows.Add(row);
row = menu.NewRow();
row["PageFile"] = "Logout.aspx";
row["DisplayName"] = "Logout";
menu.Rows.Add(row);
return menu;
}