剪贴板事件C# [英] Clipboard event C#
本文介绍了剪贴板事件C#的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
时有一个剪贴板更改或更新事件,我可以通过C#访问?
Is there a clipboard changed or updated event that i can access through C#?
推荐答案
我认为你将不得不使用一些的P / Invoke:
I think you'll have to use some p/invoke:
[DllImport("User32.dll", CharSet=CharSet.Auto)]
public static extern IntPtr SetClipboardViewer(IntPtr hWndNewViewer);
基本上你使用注册您的应用程序作为一个剪贴板查看器
Basically you register your app as a clipboard viewer using
_ClipboardViewerNext = SetClipboardViewer(this.Handle);
然后您将收到的 WM_DRAWCLIPBOARD
消息,您可以通过覆盖的WndProc
处理:
and then you will recieve the WM_DRAWCLIPBOARD
message, which you can handle by overriding WndProc
:
protected override void WndProc(ref Message m)
{
switch ((Win32.Msgs)m.Msg)
{
case Win32.Msgs.WM_DRAWCLIPBOARD:
// Handle clipboard changed
break;
// ...
}
}
(还有更多的工作要做;通过顺水推舟剪贴板链和注销你的观点,但你可以从<一个href=\"https://web.archive.org/web/20131104125500/http://www.radsoftware.com.au/articles/clipboardmonitor.aspx\">the文章)
这篇关于剪贴板事件C#的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文