在我的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 不起作用。
在Internet Explorer 32位中, F7 键是为特定功能保留的(我认为是Caret Browsing)。我还没有找到如何更改它,我可能无法改变它。
我可以推测的一件事是,当按下 F7 键时,Internet Explorer可能会窃取KeyDown事件。我不知道这两个过程是如何被孤立的。
为什么无法识别 F7 键的想法?
由于
答案 0 :(得分:2)
关于某些键组合未被曝光的更广泛问题存在一个开放连接问题,因为浏览器首先收到它们。
目前连接项目有7票,而SL程序经理已回应说这是设计 - 所以看起来并不乐观。