WPF 窗体在最上方不被Windows隐藏

Win10的任务栏,右下角可以一键隐藏所有窗体,但某些窗体必须在最上方不被隐藏,这有两种方案

属性声明方式

目前最方便的方法就是把 Topmost="True" ShowInTaskbar="False"两个属性一起声明了

代码判断方式

    protected override void OnPropertyChanged(DependencyPropertyChangedEventArgs e)
    {
        if (e.Property == TopmostProperty)
        {
            ThreadPool.QueueUserWorkItem(c =>
            {
                //暂停是因为如果任务栏没有隐藏掉当前任务栏就一直会反复尝试...直到隐藏掉为止
                Thread.Sleep(500);
                Dispatcher.Invoke(() =>
                {
                    this.Topmost = true;
                });
            });
        }
        base.OnPropertyChanged(e);
    }
原文地址:https://www.cnblogs.com/QuXingBai-Blog/p/15058826.html