Maison >développement back-end >C++ >Comment gérer les messages WndProc dans WPF ?
Gestion des messages WndProc dans WPF
Dans Windows Forms, la gestion des messages WndProc est un processus simple. Dans WPF, cependant, l’approche est légèrement différente.
Utiliser la classe HwndSource
WPF fournit l'espace de noms System.Windows.Interop, qui contient la classe HwndSource. Cette classe permet l'interception et le traitement des messages WndProc.
Exemple de mise en œuvre
L'extrait de code suivant fournit un exemple d'utilisation de la classe HwndSource pour gérer les messages WndProc dans WPF :
<code class="language-c#">using System; using System.Windows; using System.Windows.Interop; namespace WpfApplication1 { public partial class Window1 : Window { public Window1() { InitializeComponent(); } protected override void OnSourceInitialized(EventArgs e) { base.OnSourceInitialized(e); HwndSource source = PresentationSource.FromVisual(this) as HwndSource; source.AddHook(WndProc); } private IntPtr WndProc(IntPtr hwnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled) { // 在此处处理消息... return IntPtr.Zero; } } }</code>
Dans cet exemple :
Plus d'informations
Pour une explication plus détaillée de cette technique, consultez l'excellent article de blog de Steve Rands sur l'utilisation de WndProc personnalisé dans les applications WPF.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!