如何复制我在一个ContextMenu中创建的MenuItem并复制它以便我可以在第二个ContextMenu中使用它?
我试图直接复制并删除它,但我得到 Element已经有一个逻辑父。在将旧父级附加到新父级之前,必须将其与旧父级分离。
foreach(MenuItem mi in menuOptions.Items) {
entityRightClick.Items.Add(mi);
menuOptions.Items.Remove(mi);
}
我尝试使用ItemContainerGenerator抓取MenuItem,它给了我一个空白的MenuItem(调试器说它是null)
for(int i = 0; i < menuOptions.Items.Count; i++) {
MenuItem temp = new MenuItem();
temp = menuOptions.ItemContainerGenerator.ContainerFromIndex(i) as MenuItem;
entityRightClick.Items.Add(temp);
}
答案 0 :(得分:3)
根据您的错误消息,我希望这可以工作(虽然我还没有测试过):
foreach(MenuItem mi in menuOptions.Items)
{
menuOptions.Items.Remove(mi);
entityRightClick.Items.Add(mi);
}