知道几层的话用下面的就可以了:
for(int i = 0;i < this.mainMenu1.MenuItems.Count ;i ++)
{
    for(int m=0;m<this.mainMenu1.MenuItems[i].MenuItems.Count;m++)
    {
 
     }
}
或者用递归

解决方案 »

  1.   

    用递归:
    void getMenuItem(MenuItems menus){
    for(int i = 0;i < menus.Count ;i ++)
    {
         ..............................
         if(menus[i].MenuItems.Count > 0){
             getMenuItem(menus[i].MenuItems);
         }}
      

  2.   

    用递归:
    void getMenuItem(MenuItems menus){
    for(int i = 0;i < menus.Count ;i ++)
    {
         ..............................
         if(menus[i].MenuItems.Count > 0){
             getMenuItem(menus[i].MenuItems);
         }}
      

  3.   

    void getMenuItem(MenuItems menus){
    for(int i = 0;i < menus.Count ;i ++)
    {
         ..............................
         if(menus[i].MenuItems.Count > 0){
             getMenuItem(menus[i].MenuItems);
         }}
    经典的递归