我的目标是允许我的应用程序的用户通过按键盘上的CTRL + F11来调出我正在调用我的调试控制台。
简单地说,我需要调用一个ToggleDebug();
方法,它将启用我的调试跟踪代码并显示窗口。我希望我的应用程序可以在按下CTRL + F11的任何时候执行此操作,无论用户当前在哪里聚焦光标,只要我的应用程序是当前聚焦的窗口。
我的应用程序是通过Click Once部署的 - 所以它是部分信任类型的环境。
在一个旧的VB6应用程序中,我一直在使用wend
循环调用DoEvents()
和一个Windows API调用...不用说,我希望现在有更好的方法
答案 0 :(得分:3)
您可以处理窗口的PreviewKeyDown事件。
public MainWindow()
{
InitializeComponent();
this.PreviewKeyDown += new KeyEventHandler(MainWindow_PreviewKeyDown);
}
void MainWindow_PreviewKeyDown(object sender, KeyEventArgs e)
{
if ((e.Key == Key.F11) && (Keyboard.Modifiers == ModifierKeys.Control))
{
}
}