博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#: 鼠标和键盘的输入事件
阅读量:5889 次
发布时间:2019-06-19

本文共 665 字,大约阅读时间需要 2 分钟。

本文以Canvas为例,介绍一下在C#中获取鼠标和键盘事件的方法。使用这些事件前,需要添加引用using System.Windows.Input。

1. MouseDown

Canvas  canvas = new Canvas();canvas.MouseDown += new MouseEventHandler(canvas_MouseMove);private void canvas_MouseMove(object sender, MouseEventArgs e){    if(e.LeftButton == MouseButtonState.Pressed)    {        //事件处理    }}

 

 

2. KeyDown

由于Canvas 无法像TextBox那样捕捉键盘输入,所以对Canvas添加KeyDown事件后发现无法触发,但鼠标事件可以。要解决这个问题,可将事件处理放在上层窗体的键盘事件中。

var window = Window.GetWindow(this);window.KeyDown += new KeyEventHandler(window_keyDown);private void window_keyDown(object sender, KeyEventArgs e) {    //事件处理}

 

3. PreviewKeyDown

与KeyDown的区别:

PreviewKeyDown是隧道路由类型,方向是从父到子。

KeyDown是冒泡路由类型,方向是从子到父。

 

转载地址:http://kvysx.baihongyu.com/

你可能感兴趣的文章
startActivityForResult用法
查看>>
写给未来的你——老婆
查看>>
autofs自动挂载
查看>>
如何基于国产CPU的云平台构建容器管理平台?(上篇)
查看>>
AWS吹走了私有云天空中最后一片乌云
查看>>
C语言学习笔记--选择排序,插入排序
查看>>
异常及File类概述
查看>>
python字符编码
查看>>
import android.support.v7.app.ActionBarActivity; 报
查看>>
ImageView显示超大图片
查看>>
bash的工作特性之命令执行返回值和命令展开的内容及练习示例
查看>>
linux 命令 —— gzip
查看>>
IDEA
查看>>
SecureCRT中用vbs脚本批量执行unix命令
查看>>
.NET中的泛型和Java泛型中的类型擦除
查看>>
时间:2014年4月13日14:32:08 加入购物车
查看>>
数据存储的四种常见方式
查看>>
WebStorm常用设置和常用快捷键
查看>>
Eclipse设置软tab(用4个空格字符代替)
查看>>
oracle创建监听Oracle Net Services 配置失败。退出代码是1
查看>>