C# winform

wangjia1991 2017-10-31 10:27:26
Dictionary<string, RibbonControl> ribbonControls = new Dictionary<string, RibbonControl>();

private void tabMain_SelectedPageChanged(object sender, TabPageChangedEventArgs e)
{
RibbonControl rc = null;

string preName = (e.PrevPage == null) ? "" : e.PrevPage.Name;
if (!string.IsNullOrEmpty(preName))
{
string preKey = preName.Substring(8);//分割
if (ribbonControls.ContainsKey(preKey))//ContainsKey用来判断map集合
rc = ribbonControls[preKey];
}

ClearMainRibbonGroup(rc);//从MainRibbonControl头部中移出

string currentPageName = (e.Page == null) ? "" : e.Page.Name;
if (string.IsNullOrEmpty(currentPageName))
return;

string key = currentPageName.Substring(8);
bool isActived = false;
if (!ribbonControls.ContainsKey(key))
return;

rc = ribbonControls[key];
int index = 1;

List<RibbonPage> ribbonPages = new List<RibbonPage>();
foreach (RibbonPage page in rc.Pages)
{
ribbonPages.Add(page);
}

foreach (RibbonPage page in ribbonPages)
{
rbControlMain.Pages.Insert(index, page); // rc.Pages 每次迭代后,该集合会自动删除,这是什么原因?请各位发表自己的见解
if (!isActived)
{
rbControlMain.SelectedPage = page;
isActived = true;
}
index++;
}


}
...全文
137 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

111,092

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧