C# - 将MenuStrip代码转换为ToolStrip

时间:2010-12-31 21:27:01

标签: c# winforms toolstrip

我正在尝试将最初用于MenuStrip的代码转换为可与ToolStrip一起使用的代码。简而言之,将MenuItem传递给Init(),我需要确定所讨论的菜单项的父项。这段代码可以与MenuStrip一起使用,但我似乎无法使用ToolStrip,其中父项是ToolStripDropDownButton。

原始代码段(适用于MenuStrip):

private MenuItem menuItemMRU;
private MenuItem menuItemParent;

public void Init(MenuItem mruItem)
{
    menuItemMRU = mruItem;
    menuItemParent = (MenuItem) menuItemMRU.Parent;
}

这是我到目前为止所得到的

private ToolSTripMenuItem menuItemMRU;
private ToolStripDropDownButton menuItemParent;

public void Init(ToolStripMenuItem mruItem)
{
    menuItemMRU = mruItem;
    menuItemParent = (ToolStripMenuItem)menuItemMRU.Owner;
}

这给了我以下错误:

无法将类型'System.Windows.Forms.ToolStrip'转换为'System.Windows.Forms.ToolStripMenuItem'

1 个答案:

答案 0 :(得分:1)

ToolStripItem确实有OwnerItem属性。见msdn