C# - Menustrip-检查父母是否存在并获取对他们的引用



首先感谢您的时间!希望您能帮助我=/

我有一个Menustrip,我想动态添加项目。

我想做的:如果已经存在完全相同名称的部分,则应将孩子添加到此父母,而是创建具有相同名称的新父(Menustripitem(。

我的代码当前确实检查了父是否已经存在(这可以正常工作(,但是问题是我无法引用此父 -> firstItem = var不起作用 ->无法将toolstripitem转换为toolstripmenuitem ..." firstItem"到woolstripitem给了我一个错误,因为我不能使用" firstitem.dropdownitems.add(with forchild(;"再添加一个孩子...

        private void AddNewMenuStrips(string [,] NewMenuStripInfo)
    {
        ToolStripMenuItem firstItem; 
         bool alreadyexists = false;
         string someItem = "Settings"; // the parent im looking for
        var items = menuStrip2.Items.Find(someItem+"ToolStripMenuItem",false); //here it checks if parent already exists. Which Works but i cant get the reference of the parent to  "firstItem"
        foreach (var item in items)
        {
            MessageBox.Show("FOUND"+item.Name);
            firstItem = var; // ERROR cant convert ToolStripItem to ToolStripMenuItem   
            alreadyexists=true;                             
        }
        if (alreadyexists == false) { firstItem = new ToolStripMenuItem(someItem); }  
   }

预先感谢!

ToolStripMenuItem是一个代表顶级菜单项并从ToolStripItem派生(不是直接(的类。

因此,要检索父菜单项,您可以使用铸件:

foreach (var item in parents)
{
    MessageBox.Show("FOUND" + item.Name);
    firstItem = item as ToolStripMenuItem;
    alreadyexists = true;
    // break;
}

相关内容

  • 没有找到相关文章

最新更新