是否有任何方法只检索任务栏上的窗口?
我想创建一个自定义“任务栏”,它将按任意顺序对APP进行分组(不仅仅是按照默认窗口任务分组的常见顺序)。
答案 0 :(得分:1)
你必须使用P / Invoke。不幸的是,没有标准的方法来确定窗口是否会出现在任务栏中(或者在alt + tab中):你只能猜测。
这是VB中一个很老的例子:http://www.thescarms.com/VBasic/alttab.aspx
在OnTopReplica中,我以类似的方式实现了它。您可以查看source code(查看OnTopReplica/WindowSeekers/TaskWindowSeeker.cs
)。
答案 1 :(得分:0)
一般情况下,没有P / Invoke - 没有。
但是,如果您只关心.NET进程中的托管Windows窗体,则可以遍历Application.OpenForms
并检查属性,尤其是Form.ShowInTaskbar
。对于WPF,它是Application.Windows
。