WPF獲取窗口句柄


通過WPF的互操作幫助類WindowInteropHelper,相關連接:https://msdn.microsoft.com/zh-cn/library/system.windows.interop.windowinterophelper.aspx

        public MainWindow()
        {
            InitializeComponent();
           
            this.SourceInitialized += MainWindow_SourceInitialized;
        }

        private void MainWindow_SourceInitialized(object sender, System.EventArgs e)
        {
            var handle = (new WindowInteropHelper(this)).Handle;
        }

可以使用HwndSource.AddHook(HwndSourceHook)加一個事件處理程序接收所有窗口消息,相關連接:https://msdn.microsoft.com/zh-cn/library/system.windows.interop.hwndsource.aspx

        private void MainWindow_SourceInitialized(object sender, System.EventArgs e)
        {
            var handle = (new WindowInteropHelper(this)).Handle;
            HwndSource.FromHwnd(handle).AddHook(new HwndSourceHook(WndProc));
        }

        private IntPtr WndProc(IntPtr hwnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled)
        {
            throw new NotImplementedException();
        }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM