foreach代码如何改造成递归
下面代码如何改造成递归的方式
List<RibbonPageGroup> rpgList = null;
List<BarButtonItem> bbbiList = null;
List<RibbonPage> rpList = new List<RibbonPage>();
foreach (XmlNode xnRibbonPage in nodeList)
{
rpgList = new List<RibbonPageGroup>();
foreach (XmlNode xnRibbonPageGroup in xnRibbonPage.ChildNodes)
{
bbbiList = new List<BarButtonItem>();
foreach (XmlNode xnBarButtonItem in xnRibbonPageGroup.ChildNodes)
{
BarButtonItem bbbii = new BarButtonItem();
bbbii.Name = xnBarButtonItem.Attributes["Name"].Value;
bbbii.Caption = xnBarButtonItem.Attributes["Caption"].Value;
bbbii.Description = xnBarButtonItem.Attributes["NameSpace"].Value;
bbbii.ItemClick += new ItemClickEventHandler(BarButtonItem_ItemClick);
bbbiList.Add(bbbii);
}
RibbonPageGroup rpg = new RibbonPageGroup();
rpg.Text = xnRibbonPageGroup.Attributes["Text"].Value;
rpg.ShowCaptionButton = false;
rpg.ItemLinks.AddRange(bbbiList.ToArray());
rpgList.Add(rpg);
}
if (xnRibbonPage.Attributes["Text"].Value != "系统管理")
{
RibbonPage rp = new RibbonPage();
rp.Text = xnRibbonPage.Attributes["Text"].Value;
rp.MergedGroups.AddRange(rpgList.ToArray());
rpList.Add(rp);
}
else
{
rp1.MergedGroups.Add(rpgList[rpgList.Count - 1]);
rpList.Add(rp1);
}
}
if (rp1.MergedGroups.Count == 1)
rpList.Add(rp1);
ribbon.Pages.AddRange(rpList.ToArray());
ribbon.ItemsVertAlign = DevExpress.Utils.VertAlignment.Top;
...全文
相关推荐
递归成树算法
递归成树算法: 将组织数据全部查询出来拼接成一树的实现方法
foreach字符串递归查找.rar
foreach字符串递归查找.rar
C#在foreach遍历删除集合中元素的三种实现方法
主要给大家总结介绍了关于C#在foreach遍历删除集合中元素的实现方法,文中通过示例代码介绍的非常详细,对大家学习或者使用C#具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
javascript forEach函数实现代码
在Base2中找到一个叫forEach的函数,是我见过的最好的实现。挖出来分析一下。它能对各种普通对象,字符串,数组以及类数组进行遍历。如果原游览器的对象已实现此函数,它则调用原对象的函数。
递归方式实现树形菜单
递归方式树形菜单实现递归方式树形菜单实现


