需求:
我现在开发一个程序用来检测U盘的插拔,程序刚开始运行的时候是隐藏的,只有一个托盘,当右键托盘图标时可以点击设置等菜单项,然会弹出对应WPF窗体。
问题:
由于初始时没有WPF窗体显示,所以通过重写OnInitialized
是不行的,代码如下:
protected override void OnInitialized(EventArgs e)
{
base.OnInitialized(e);
HwndSource hwndSource = PresentationSource.FromVisual(this) as HwndSource;
hwndSource?.AddHook(new HwndSourceHook(WndProc));
}
请问我该如何才能获取到HwndSource
WFP实现托盘只能引用System.Windows.Forms.NotifyIcon嘛?有没有其他方式可以实现?
第三方的插件有能实现的,我用的是winform里的NotifyIcon
我说了除了“winform里的NotifyIcon”哦,想问有没有其他的解决方案?