c# |如何获取ToolStrip的所有子项
本文关键字:ToolStrip 获取 何获取 | 更新日期: 2023-09-27 18:03:43
我需要得到ToolStrip/MenuStrip/StatusStrip的任何子项目翻译课文。
我做了简单的递归控制,但我不知道如何与ToolStrip项目,因为没有DropDownItems属性在ToolStripItem类。
我写了这个,它工作得很好。
private ToolStripItem[] GetAllChildren(ToolStripItem item)
{
List<ToolStripItem> Items = new List<ToolStripItem> { item };
if (item is ToolStripMenuItem)
foreach (ToolStripItem i in ((ToolStripMenuItem)item).DropDownItems)
Items.AddRange(GetAllChildren(i));
else if (item is ToolStripSplitButton)
foreach (ToolStripItem i in ((ToolStripSplitButton)item).DropDownItems)
Items.AddRange(GetAllChildren(i));
else if (item is ToolStripDropDownButton)
foreach (ToolStripItem i in ((ToolStripDropDownButton)item).DropDownItems)
Items.AddRange(GetAllChildren(i));
return Items.ToArray();
}