当前位置:编程学习 > C#/ASP.NET >>

父容器里的toolStrip加载子容器里的toolStrip

ChildFrm 里有一个ChildToolStrip:toolStrip  ,主窗体也有一个ParentToolStrip ,ChildFrm 在主窗体里加载,加载同时隐藏 ChildToolStrip,然后把ChildToolStrip里的Item 赋给 ParentToolStrip 
代码如下:
 for (int i = 0; i < ChildToolStrip.Items.Count; i++)
  {
      this.ParentToolStrip .Items.Add(ChildToolStrip.Items[i])
   }
结里一直报 “索引超出范围。必须为非负值并小于集合大小” 的异常,改用Foreach或 this.ParentToolStrip .Items.AddRange也不行,我跟了一下断点,发现 每this.ParentToolStrip .Items.Add()一次,ChildToolStrip.Items.Count的值会自动减1,这个是不是跟引用有关。 最后我改成
int count=ChildToolStrip.Items.Count
 for (int i = 0; i <count; i++)
  {
      this.ParentToolStrip .Items.Add(ChildToolStrip.Items[0]);
   }
问题暂时是解决了,但感觉这样写有点不靠谱。所以想问有没有更好的写法。
还有就在我想在加载this.ParentToolStrip .Items时,把ChildToolStrip.Items的点击事件也加进去。
但需是动态的,有没有办法,求思路。 o
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,