For Each itm As RibbonMenu.ContextMenu In ContextMenus
MessageBox.Show(itm.Gettype.Name) 'ContextMenu
For Each itm1 As Object In ContextMenus(itm.Name).Items '没有通用类型,只能用Object凑上。
MessageBox.Show(itm1.Gettype.Name) '明明有ContextCommandMenu,却只返回了ContextCommand
If itm1.Gettype.Name = "ContextCommandMenu" Then '这个判断,失去了意义。
For Each itm2 As Object In ContextMenus(itm.Name)(itm1.Name).Items
'如果不判断,就会报错:System.MissingMemberException: Public member 'Items' on type 'ContextCommand' not found.
Next
End If
Next
Next
这样,快捷菜单的遍历,难上加难了。