تنها مشکلش اینه که نباید در منو Separator (خط جدا کننده) داشته باشه
سلام
اینجوری ارور نمیده



private IEnumerable<ToolStripMenuItem> GetItems(ToolStripMenuItem item)
{
foreach (ToolStripMenuItem dropDownItem in item.DropDownItems.OfType<ToolStripMenuItem>())
{
if (dropDownItem.HasDropDownItems)
{
foreach (ToolStripMenuItem subItem in GetItems(dropDownItem).OfType<ToolStripMenuItem>() )
yield return subItem;
}


yield return dropDownItem;
}
}