C # - Автономный ContextMenuStrip - Некоторые разочарования - PullRequest
0 голосов
/ 03 марта 2011

Я пытаюсь создать программу, которая в основном представляет собой ContextMenuStrip, где пользователи могут добавлять свои собственные ярлыки и т. Д. И получать доступ к меню, нажимая комбинацию горячих клавиш.

Способ отображения менюэто дает основную форму непрозрачность 0%, но если есть другой способ, пожалуйста, дайте мне знать.

Я хочу сделать что-то вроде этого, просто гораздо более настраиваемый и удобный: http://www.bullzip.com/products/exm/info.php

До сих пор у меня была пара проблем: - При первом показе меню все работает нормально, но когда я снова пытаюсь нажать горячую клавишу, появляется меню, но появляется и «пустое» окно.в панели задач.- Опять же, когда меню отображается в первый раз, все в порядке, но при нажатии в любом месте, кроме меню, оно не закрывается снова.Единственный способ закрыть это, выбрав что-то из меню.

Надеюсь, некоторые из вас подскажут мне решение проблемы:)

Заранее спасибо!

1 Ответ

0 голосов
/ 04 марта 2011
Form.ShowInTaskbar = false;

Form.WindowState = FormWindowState.Minimized;

Это должно скрыть форму для вас.

Затем используйте следующее, чтобы перехватить нажатие клавиш.

protected override bool ProcessCmdKey(ref Meassage msg, Keys keyData)
{
    if(keydata == whatever)
    {
        contextmenustrip.Show();
    }    

    return true; //false if you want to suppress the key press.
}
...