Можно ли отображать контекстное меню WPF на WinForms?Меню WPF на Winforms
Если да, то как мы можем это сделать?
Можно ли отображать контекстное меню WPF на WinForms?Меню WPF на Winforms
Если да, то как мы можем это сделать?
Я не знаю, можно ли это сделать, но this article может помочь вам в правильном направлении. Как разработчик WPF, мне кажется странным смешивать winforms и wpf, но я вижу пример повторного использования.
Вы можете смешивать 2 технологии, используя WindowsFormsHost
(WinForm внутри окна WPF) и ElementHost
(WPF внутри окна WinForm).
Вы не столкнетесь с проблемой Airspace при добавлении WPF-меню в приложение Winform. Но вы будете, если будете создавать окна WPF с помощью Winform UserControls. У этого Blog post есть некоторые идеи по его решению, но это не очень.
ОК, так что я нашел ответ сам ... (я пытался дать 50 пунктов награду в, но я не думаю, что я могу наградить себя: P)
У нас есть много наследия WinForms ... формы ... все еще в нашем проекте на работе. И вот секретный код, который необходим для отображения контекстного меню WPF в проекте WinForms!
var myMenu = new System.Windows.Controls.ContextMenu();
myMenu.Items.Add("One");
myMenu.Items.Add("Two");
myMenu.Items.Add("Three");
myMenu.IsOpen = true;
Tada !!! - Секретного кода не требуется ... вы можете написать этот код в приложении WPF или в приложении WinForms, и он работает так же.
И ваш ответ :)
Убирайтесь из города, я смог наградить себя! –
почему бы вам не показать WinForms контекстное меню на вашем приложении WinForms? –
Потому что у меня есть форма в моем приложении, сделанное в Winform, давным-давно, но вся новая реализация в WPF, поэтому мне интересно, могу ли я повторно использовать существующее контекстное меню. –