自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

WPF處理消息使用說明

開發(fā) 開發(fā)工具
WPF處理消息作為一個開發(fā)基礎(chǔ)技術(shù),是值得我們?nèi)ナ炀毜恼莆盏摹T诰唧w的代碼編寫中,我們要不斷的積累經(jīng)驗來提高我們的編程能力。

WPF開發(fā)工具可以幫我們實現(xiàn)許多功能。比如我們今天要向大家介紹的有關(guān)WPF處理消息的實現(xiàn)方法,就可以簡單輕松的幫助開發(fā)人員實現(xiàn)。#t#

在你運行WPF程序的時候——new App().Run(new MyWindow()),有時候要使用Win32API進行WPF處理消息的時候該怎么辦?其實很簡單,一切的需要都在System.Windows.Interop這個namespace中,這個namespace中所包含的東西主要是為Windows Presentation Foundation (WPF) 和其他技術(shù)(如 Win32API)之間的互操作提供支持類型,并為涉及WPF的其他特定互操作方案提供基類。

其他的我就不加以說明了,這里的主題是如何在WPF中使用WindowProc處理消息。

在WPF處理消息中使用WindowProc,首先要獲得一個HWND句柄(一個IntPtr類型),然后通過創(chuàng)建一個HwndSource對象,再通過調(diào)用這個對象中的AddHook方法來添加WindowProc。
 

 

  1. // 其他namespace  
  2. using System.Windows.Interop;  
  3. public partial class 
    MyWindow : Window  
  4. {  
  5. public MyWindow()  
  6. {  
  7. InitializeComponent();  
  8. // 處理你要做的  
  9. // 添加WindowProc  
  10. IntPtr hwnd = new WindowInterop
    Helper(this).Handle;  
  11. HwndSource.FromHwnd(hwnd).AddHook
    (new HwndSourceHook(WndProc));  
  12. }  
  13. IntPtr WndProc(IntPtr hwnd, 
    int msg, IntPtr wParam, IntPtr 
    lParam)  
  14. {  
  15. // 處理你要處理的消息,具體的消息可
    在WinUser.h中找到,或者在MSDN中  
  16. 查找  
  17. }  
  18. // 其他的  

 

在這段簡單的WPF處理消息代碼中,我所創(chuàng)建的WindowProc為WndProc。HwndSourceHook是一個Delegate,這里我把WndProc傳給了他。

責(zé)任編輯:曹凱 來源: 博客園
相關(guān)推薦

2009-12-24 16:20:43

WPF Tooltip

2009-12-25 18:12:43

WPF裝飾器

2009-12-28 11:23:38

WPF資源文件

2013-10-31 10:59:41

Clouda使用

2019-09-29 14:33:30

Redis集合元素

2010-06-03 13:49:04

Sendmail 配置

2011-03-15 10:00:01

NetfilterIPTables

2010-05-27 14:28:41

TortoiseSVN

2009-12-15 15:13:07

.NET Framew

2009-12-21 10:10:25

Oracle產(chǎn)品

2010-05-27 14:02:04

SVN使用說明

2010-05-27 14:38:37

2010-07-28 09:49:27

FlexBuilder

2010-05-07 13:43:27

Unix Shell

2009-12-15 10:17:38

VS 2010軟件

2010-05-27 14:18:00

SVN使用說明

2020-06-28 09:03:26

Linuxtree命令目錄

2010-01-05 16:33:35

使用JSON

2009-12-31 09:42:41

ADO對象模型

2009-12-29 14:28:58

ADO數(shù)據(jù)
點贊
收藏

51CTO技術(shù)棧公眾號