我在C#中编写了一个WPF应用程序,我想在每次打开开始菜单时显示该应用程序,并在菜单关闭时再次隐藏。 我更愿意在不轮询开始菜单状态的情况下这样做。到目前为止,我已经尝试过收听SHELLHOOK消息,但我没有看到任何有用的信息。
答案 0 :(得分:2)
我无法为您编写完整的代码,但这是其背后的逻辑,
首先使用
找到任务栏的句柄[DllImport("user32.dll", SetLastError = true)]
public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
也将Shell_TrayWnd
作为lpClassName
通过模拟点击按钮激活开始菜单。
获取开始菜单
使用GetWindowLong
功能检查它是否已打开。