Получите WPF ContextMenu для отображения на Winforms NotifyIcon

Я использую Winforms NotifyIcon, так как нет версии WPF, я также использую туториал ContextMenu: http://www.wpftutorial.net/ContextMenu.html

И я буду использовать код размещения мыши, найденный в ответе здесь: http://social.msdn.microsoft.com/forums/en-US/wpf/thread/8cdd4ef1-d31e-42ef-a30e-7b482c0fa163/

Моя основная проблема заключается в том, что метод:

private void OpenContextMenu(FrameworkElement element)
{
    if( element.ContextMenu != null )
    {
       element.ContextMenu.PlacementTarget = element;
       element.ContextMenu.IsOpen = true;
    }
}

Как это используется? Может ли кто-нибудь сказать мне, какие шаги мне нужно будет сделать, чтобы это отображалось для моего NotifyIcon

Спасибо


person Sandeep Bansal    schedule 30.06.2011    source источник
comment
Вы пытаетесь открыть контекстное меню, щелкнув правой кнопкой мыши NotifyIcon? Можно ли просто назначить WinForms ContextMenu свойству NotifyIcon.ContextMenu?   -  person agent-j    schedule 30.06.2011
comment
Да, я использую обработчик правого клика, но я не хочу использовать контекстное меню Win Forms, поскольку я хочу иметь возможность настраивать свой собственный ContextMenu с помощью Xaml.   -  person Sandeep Bansal    schedule 30.06.2011


Ответы (2)


CodePlex имеет WPF-версию NotifyIcon. Это может лучше удовлетворить ваши потребности.

person agent-j    schedule 30.06.2011
comment
Спасибо за информацию, но решение Visual Studio не открывает проект правильно, и я не знаю, использует ли оно какую-то другую библиотеку, чего я пытаюсь избежать. - person Sandeep Bansal; 30.06.2011

Я нашел это сам, он делает свою работу и очень прост в реализации.

http://weblogs.asp.net/marianor/archive/2007/10/15/a-wpf-wrapper-around-windows-form-notifyicon.aspx

person Sandeep Bansal    schedule 30.06.2011