在KeyDown事件中无法识别F7键
本文关键字:识别 F7 KeyDown 事件 | 更新日期: 2023-09-27 18:03:39
在我的Silverlight TextBox控件的KeyDown事件中,F7键未被识别,我无法找出原因。
代码: private void txtDraw_KeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.F7)
{
Debug.WriteLine("F7");
drawRect();
}
else if (e.Key == Key.F8)
{
Debug.WriteLine("F8");
draw2Rects();
}
else if (e.Key == Key.F9)
{
Debug.WriteLine("F9");
draw3Rects();
}
}
private void draw3Rects()
{
}
private void draw2Rects()
{
}
private void drawRect()
{
Rectangle rect = new Rectangle();
rect.Fill = new SolidColorBrush(red);
Grid.SetColumn(rect, 1);
Grid.SetRow(rect, 0);
}
我知道按F7键没有做任何事情,因为我试过在那行调试,我试过做Debug.WriteLine()。Debug.WriteLine()方法只在按下F8键和F9键时发生。F7不工作
在32位Internet Explorer中,F7键是为特定功能保留的(我认为它是插入浏览)。我还没有找到改变它的方法,也可能改变不了。
我可以推测的一件事是,当按下F7键时,Internet Explorer可能正在窃取KeyDown事件。我不知道这两个进程是如何分离的。知道为什么F7键不被识别吗?
谢谢
存在一个关于某些键组合未被暴露的更广泛问题的开放连接问题,因为浏览器首先接收它们。
https://connect.microsoft.com/VisualStudio/feedback/details/525760/silverlight-in-ie8-ctrl-p-and-some-other-ctrl-shortcuts-cannot-catched目前连接项有7票,SL项目经理回应说这是设计的-所以看起来没有希望。