Я пытаюсь преобразовать код, который изначально предназначался для MenuStrip, для чего-то, что будет работать с ToolStrip. Короче говоря, MenuItem передается в Init(), и мне нужно определить, что родительский элемент рассматриваемого пункта меню. Этот фрагмент отлично работает с помощью MenuStrip, но я не могу заставить его работать с ToolStrip, где родительский элемент - ToolStripDropDownButton.C# - Преобразование MenuStrip-кода в ToolStrip
Исходный фрагмент кода (Идеально для 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'
И что вы подразумеваете под «Я не могу заставить его работать с ToolStrip'? Ошибка/исключение или какое-либо другое поведение? – decyclone
Обновленный вопрос с тем, что я сейчас пытаюсь использовать. – user
Вы получаете ошибку 'Can not convert type 'System.Windows.Forms.ToolStrip' в 'System.Windows.Forms.ToolStripMenuItem'', потому что' Owner' является типом 'ToolStrip', а не' ToolStripMenuItem'. – decyclone