在Windows 7中,我们有ApplicationID的概念,它允许(除其他外)在任务栏中对几个图标进行分组。 如何从c#更改正在运行的进程的ApplicationID?我正在尝试用另一个应用程序制作我的WinForm应用程序的图标组。 我尝试过使用Windows API Code Pack Library,在我的Load事件中粘贴以下代码......但它不起作用。建议?
TaskbarManager.Instance.ApplicationId = "MyAppID";
Process[] p = Process.GetProcessesByName("OtherProcess");
TaskbarManager.Instance.SetApplicationIdForSpecificWindow(p[0].MainWindowHandle, "MyAppID");
答案 0 :(得分:2)
我重复这个。我认为SDK文档是错误的,并且SetApplicationIdForSpecificWindow()方法的XML文档是正确的:
AppId指定一个唯一的应用程序 用户模型ID(AppID) 应用程序或个人顶级 任务栏按钮将保持的窗口 通过自定义JumpList构建 方法类。
通过为特定设置appId 窗口,窗口不会被分组 用它的父窗口/应用程序。 相反,它将拥有自己的任务栏 按钮。
我强调不。
答案 1 :(得分:0)
(某种)显而易见的解决方案是将您想要组合在一起的两个窗口的应用程序ID 设置为相同的ID 。
示例:
TaskbarManager.Instance.SetApplicationIdForSpecificWindow(win1.MainWindowHandle, "W00T");
TaskbarManager.Instance.SetApplicationIdForSpecificWindow(win2.MainWindowHandle, "W00T");
Aaaa和两个窗口将组合在一起。