2

我正在将 ASP.net 与 C# 一起使用,我想要一个可以动态编码的列表,看起来像这样:


  • 菜单项 A
    • 子菜单链接 1
    • 子菜单链接 2
    • 子菜单链接 3

到目前为止,我已经设法通过这样做创造了第一个过去:

BulletedList MainUl = new BulletedList();
MainUl.DisplayMode = BulletedListDisplayMode.HyperLink;
ListItem item = new ListItem("Menu Item A", "http://www.google.com");
MainUl.Items.Add(item);            
panel.Controls.Add(MainUl);

问题是我不知道如何将其他子项嵌套在主“菜单项 A”下

任何帮助是极大的赞赏 :)

4

3 回答 3

0

或者,您可以将DataControl(DataList、Repeater、GridView)与BulletedList. 您应该尝试Menu 或 TreeView控件。

于 2012-07-28T11:47:13.167 回答
0

尝试使用此代码

<asp:Menu ID="Menu1" runat="server" StaticDisplayLevels="3">
  <Items>
    <asp:MenuItem Text="Menu Item A" Value="0">
      <asp:MenuItem Text="Sub Menu Link 1" Value="1"></asp:MenuItem>
      <asp:MenuItem Text="Sub Menu Link 2" Value="2"></asp:MenuItem>
      <asp:MenuItem Text="Sub Menu Link 3" Value="3"></asp:MenuItem>
    </asp:MenuItem>
  </Items>
</asp:Menu>

或者这段代码

<asp:TreeView ID="MyTreeView" Runat="server">
  <Nodes>
    <asp:TreeNode Value="0" Expanded="True" Text="Menu Item A">
      <asp:TreeNode Text="Sub Menu Link 1" Value="1" />
      <asp:TreeNode Text="Sub Menu Link 2" Value="2" />
      <asp:TreeNode Text="Sub Menu Link 3" Value="3" />
    </asp:TreeNode>
  </Nodes>
</asp:TreeView>
于 2012-07-28T11:50:24.907 回答
0

使用树视图

 protected void Page_Load(object sender, EventArgs e)
 {
 TreeNode pn = new TreeNode("Menu Item A");
     TreeNode cn1 = new TreeNode("<a href='http://www.google.com.pk/' >Sub Menu Link 1</a>");
    TreeNode cn2 = new TreeNode("<a href='http://www.google.com.pk/' >Sub Menu Link 2</a>");
    TreeNode cn3 = new TreeNode("<a href='http://www.google.com.pk/' >Sub Menu Link 3</a>");

    TreeView tv = new TreeView();
    tv.Nodes.Add(pn);

    tv.Nodes[0].ChildNodes.Add(cn1);
    tv.Nodes[0].ChildNodes.Add(cn2);
    tv.Nodes[0].ChildNodes.Add(cn3);        

    panel.Controls.Add(tv);
 }

输出:

Menu Item A
Sub Menu Link 1
Sub Menu Link 2
Sub Menu Link 3
于 2012-07-28T11:54:37.110 回答