SORU
8 Mart 2009, Pazar


Nasıl WPF Nedenle iletileri işlemek için?

Bulma dik bir öğrenme eğrisi WPF.

İyi ol' Windows, sadece WndProc, geçersiz kılma ve bize gelen mesajları işleme başlardım Formları.

Biri bana WPF aynı şeyi elde etmek için nasıl bir örnek gösterebilir mi?

CEVAP
18 Aralık 2009, Cuma


Bir sınıf HwndSource adında içeren System.Windows.Interop ad üzerinden yapabilirsiniz.

Bu kullanma örnekleri

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)
        {
            // Handle messages...

            return IntPtr.Zero;
        }
    }
}

Tamamen mükemmel bir blog yazısı: Using a custom WndProc in WPF apps by Steve Rands (not, link artık geçerli değil)

Şimdi bu site ama Wayback motoru görebilirsiniz: http://web.archive.org/web/20091019124817/http://www.steverands.com/2009/03/19/custom-wndproc-wpf-apps/

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ben Schoon

    Ben Schoon

    23 Kasım 2012
  • cekehechu

    cekehechu

    20 HAZİRAN 2006
  • humanHardDrive

    humanHardDri

    16 Mart 2011