c# метод Control.DefWndProc

213
10 октября 2018, 05:10

Почитал достаточно, но негде не нашел понятного ответа для себя. Мне нужно переопределить метод DefWndProc в wpf. Как я понял этот метод наследуется от Control т е от Form, который я не смогу подключить в wpf. Каким образом переопределить кое-как нашел, делаю так:

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;
        }
    }
}

Но т к я не пойму как работает эта функция, не понимаю что передавать в нее. Мне бы ссылочку с примером как она работает либо где о ней можно почитать, а то msdn не сильно много о ней рассказывает. Заранее спасибо.

READ ALSO
WebBrowserDocumentCompleted не отрабатывает

WebBrowserDocumentCompleted не отрабатывает

Получаю список html-файлов с путями к ним и сохраняю их в List<string> и DataGridView:

183
Процедурная генерация уровня

Процедурная генерация уровня

Суть такая, пилю процедурную генерацию уровня из готовых комнат/модулей

177
С# WPF Слайдер в % изменение 4х значений сразу

С# WPF Слайдер в % изменение 4х значений сразу

Есть 4 textbox или 4 NumericUpDown с разными значениями (15, 2

187
Теория : Visual Studio + Python

Теория : Visual Studio + Python

Вопрос теоретическийЕсть скрипт написанный на Python

159