加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – KeyDown事件中无法识别F7键

发布时间:2020-12-15 17:18:45 所属栏目:百科 来源:网络整理
导读:在我的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) { D
在我的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键?

谢谢

解决方法

关于某些键组合未被暴露的更广泛问题存在开放连接问题,因为浏览器首先接收它们.

https://connect.microsoft.com/VisualStudio/feedback/details/525760/silverlight-in-ie8-ctrl-p-and-some-other-ctrl-shortcuts-cannot-catched

目前连接项目有7票,而SL程序经理已回应说这是设计 – 所以看起来并不乐观.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读