WPF 自定义模态窗体闪烁
以前在winform用的消息hook
wpf这个办法没反应了
查看wpf的ShowDialog源代码发现用的禁用,禁用之后主窗体不再接受消息
找了网上一堆方法都不咋灵光
https://www.cnblogs.com/Vito2008/articles/WPF-UIShell-UIFramework-Blink-WmNCHitTest-WmGetMinMaxInfo.html
https://stackoverflow.com/questions/27158317/wpf-how-do-i-make-a-custom-modal-dialog-flash
https://social.msdn.microsoft.com/Forums/vstudio/en-US/2bda5550-344a-4ba3-abd9-78696fd64286/modal-window-flash-effect-window-message-in-wpf?forum=wpf
最后,我发现Window有个Deactivated事件,闪烁的效果不就是失去激活得时就闪一次吗
于是,我在失去激活的事件里加上了激活窗口,失去的同时马上激活,他就闪起来了
关键词;
Window设置正确的 Owner
Native方法 BringWindowToTop
在Dispatcher.BeginInvoke里面操作