C # - конвертировать код MenuStrip в ToolStrip - PullRequest
2 голосов
/ 01 января 2011

Я пытаюсь преобразовать код, который изначально предназначался для 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 Ответ

1 голос
/ 01 января 2011

Однако ToolStripItem имеет свойство OwnerItem.См MSDN

...