检查是否按下了PAGEUP或PAGEDOWN

时间:2014-11-17 09:30:31

标签: c# winforms keypress

我有一个Windows窗体应用程序,其中有页面。

简短而简单的问题;

如何在Windows窗体中检查是否按下Page-UP或Page-Down键?

这样做的目的是,我可以通过单击这两个按钮中的一个来浏览页面。

2 个答案:

答案 0 :(得分:5)

在表单上设置KeyPreview属性。并添加表单键向下事件处理程序:

private void form_KeyDown(object sender, KeyEventArgs e)
{
   if(e.KeyCode == Keys.PageUp)
      //do something on page up
   if(e.KeyCode == Keys.PageDown)
      //do something on page down
}

答案 1 :(得分:3)

您应该覆盖ProcessCmdKey方法

protected override bool ProcessCmdKey(ref Message msg, Keys keyData) {
        if (keyData == Keys.PageUp) {
            MessageBox.Show("Pressed PageUp");
            return true;
        }
        if (keyData == Keys.PageDown) {
            MessageBox.Show("Pressed PageDown");
            return true;
        }
        return base.ProcessCmdKey(ref msg, keyData);
    }