作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
假设您在一个应用程序中有多个窗口,并且所有窗口都设置为显示在任务栏中。将鼠标悬停在应用程序的图标上会生成一组缩略图,每个窗口一个。如果有足够的窗口,Windows 7 会将其切换为一个高大的、可滚动的按名称列出的窗口列表。
我想以编程方式重新排序这个“缩略图”列表,因为有一个特定的窗口我想成为列表顶部的第二个。我该怎么做?
请注意,我无法更改窗口的创建顺序(这是一种解决方案,但遗憾的是我无法利用)。
最佳答案
好吧,事实证明这很简单,但我错了。
您需要做的就是将所有您希望重新排序的 Window
对象的 ShowInTaskbar
设置为 false
。然后将其设置回 true
,按照您希望窗口出现的确切顺序。无需重新创建 Window
对象。
就我而言,在重新排序期间,窗口闪烁了一次。这可能与我当前的 GFX 驱动程序有关。
注意:经过测试并可在 Windows 7 和 Windows 10 上使用。
例子:
using System.Windows;
namespace WpfApp1
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
Window winA = new Window();
Window winB = new Window();
Window winC = new Window();
public MainWindow()
{
InitializeComponent();
winA.Title = "A";
winB.Title = "B";
winC.Title = "C";
winB.Show();
winA.Show();
winC.Show();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
winB.ShowInTaskbar = false;
winA.ShowInTaskbar = false;
winC.ShowInTaskbar = false;
winA.ShowInTaskbar = true;
winB.ShowInTaskbar = true;
winC.ShowInTaskbar = true;
}
}
}
关于c# - 如何重新排列出现在任务栏中的应用程序的缩略图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44056650/
我是一名优秀的程序员,十分优秀!