Остановить отображение окон как «задач» из диспетчера задач WPF c # - PullRequest
6 голосов
/ 24 сентября 2011

У меня есть программа, которая открывает несколько окон. Я использовал этот метод , чтобы скрыть их от ALT + TAB. Теперь мне нужно, чтобы новые окна перестали отображаться на вкладке «Задачи» диспетчера задач.

Мне не нужно, чтобы процесс не отображался в диспетчере задач, я просто не хочу, чтобы все окна, которые открывает моя программа, отображались на вкладке «задача».

Вот изображение того, от чего я пытаюсь избавиться: http://i1096.photobucket.com/albums/g324/thezaza101/Tasklist.jpg

-Спасибо

Ответы [ 4 ]

7 голосов
/ 25 сентября 2011

Решено благодаря Дэвиду Хеффернану.

В моём главном окне я добавил поле статического окна, которое ссылается на моё главное окно.

public static Window main;
Public MainWindow()
{
main = this;
}

На окнах мне нужно спрятаться от диспетчера задач и ALT + TAB, я сделал своим главным окном его владельцем:

public HiddenWindow()
{
this.Owner = MainWindow.main;
}  

Это действительно просто, оно скрывает окно от вкладки «Задачи» в диспетчере задач, а также не дает людям ALT + TABing в вашу программу.

3 голосов
/ 24 сентября 2011

Для WPF единственный способ, которым я в настоящее время знаю, это установить заголовок вашего окна на string.Empty или установить WindowStyle на ToolWindow. Установка для ShowInTaskBar значения false не скрывает ваше окно из списка приложений.

0 голосов
/ 31 июля 2018

Другой способ - использовать WindowInteropHelper.

    public MainWindow()
    {
        InitializeComponent();

        SourceInitialized += (s, e) =>
        {
            var win = new WindowInteropHelper(this);
            win.Owner = GetDesktopWindow();
        };
    }

    [DllImport("user32.dll", SetLastError = false)]
    static extern IntPtr GetDesktopWindow();
0 голосов
/ 26 июня 2015

У меня та же проблема (может, какая-то другая), вот мой код:

subWindow.hide();//this will hide the subWindow
subWindow.show();//if want to show again

вы не увидите окно в задании или AlT + TAB после использования hide ()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...