Я пытался добавить глобальные горячие клавиши в WPF.
var helper = new WindowInteropHelper(this);
var handle = helper.Handle;
var source = HwndSource.FromHwnd(handle);
Когда я помещаю этот фрагмент кода в метод переопределения OnInitialized
, он возвращает значение 0
для переменной handle
и завершается ошибкойв HwndSource.FromHwnd(handle)
.
Но, когда я помещаю его в метод переопределения OnSourceInitialized
, он возвращает случайное значение для переменной handle
и прекрасно работает в HwndSource.FromHwnd(handle)
.
Я былпытаясь понять, почему так происходит.
В чем разница между OnInitialized и OnSourceInitialized в WPF?