相关疑难解决方法(0)

确定当前应用程序是否已激活(具有焦点)

注意:有一个非常相似的问题,但它是WPF特有的; 这个不是.

如何确定当前应用程序是否已激活(即具有焦点)?

.net c#

45
推荐指数
4
解决办法
4万
查看次数

如何在WPF页面或UserControl对象上捕获KeyDown事件?

我有一个带有UserControl的页面.如果用户在我想要处理的页面上的任何位置按Esc.

我认为这就像挂钩PreviewKeyDown事件,测试Esc键,然后处理它一样简单.但是,当我在事件处理程序中放置断点时,我发现它永远不会被调用.我想也许UserControl可能会被击中,所以我尝试了PreviewKeyDown ......结果相同.

有没有人知道在Page对象上测试KeyDown或PreviewKeyDown的正确位置?

wpf keydown

34
推荐指数
6
解决办法
7万
查看次数

如何在C#.NET表单上捕获按键

我有一个包含很多控件的父表单.我要做的是过滤该表单的所有按键.麻烦的是,如果焦点在表单上的一个控件上,那么父表单没有获得按键事件,那么如何捕获按键事件?

.net c# winforms

14
推荐指数
2
解决办法
3万
查看次数

捕获用户控件中的所有鼠标单击和按键

我想捕获特定用户控件中的所有按键和鼠标单击.我需要这样做才能创建一个空闲检测,这样如果用户在用户控件中没有做任何事情,我可以解锁实体.

我的第一次尝试是PreProcessMessage检测Windows消息,但它似乎没有被调用?我的第二个是使用DefWndProc,但没有为这些消息调用它.

我怎样才能获得WM_KEYDOWNWM_MOUSEUP用户控件和它的所有的孩子吗?

更新

ProcessKeyPreview 用于检测密钥

c# winforms

5
推荐指数
1
解决办法
7270
查看次数

处理UserControl上的剪贴板副本

我有复杂的UserControl(网格,网格的编辑控件等等),我想要处理CTRL + C键盘快捷键,但我不想通过编辑控件(文本框,组合框等等)禁用本机功能. .如果CTRL + C没有被其他内部控件处理,我想自己处理它(从网格中复制整行等等).

我尝试在UserControl中覆盖WndProc方法并检查WM_COPY和WM_COPYDATA,但它不起作用.它仅适用于最终目标控件(例如TextBox).

.net c# vb.net clipboard winforms

2
推荐指数
1
解决办法
3020
查看次数

标签 统计

c# ×4

.net ×3

winforms ×3

clipboard ×1

keydown ×1

vb.net ×1

wpf ×1