Как скрыть панель задач в WPF в настольном приложении Windows 10?

#c# #wpf #.net-core

#c# #wpf #.net-core

Вопрос:

Как скрыть панель задач в WPF в настольном приложении Windows 10?

Я осмотрелся, и это самое близкое, что я получил, но я не могу скрыть панель задач.

 this.ShowInTaskbar = false;
this.WindowState = WindowState.Maximized;
this.WindowStyle = WindowStyle.None;
 

Я работаю с WPF, NET Core, и это настольное приложение для Windows 10. Я просматривал веб-страницы и видел, что это предлагается, но все равно не работает.

 this.WindowStyle = WindowStyle.None;
this.Top = 0;
this.Left = 0;
this.Width = SystemParameters.WorkArea.Width;
this.Height = SystemParameters.WorkArea.Height;
this.MaxHeight = SystemParameters.MaximizedPrimaryScreenHeight;
this.MaxWidth = SystemParameters.MaximizedPrimaryScreenWidth;
 

Мне нужен настоящий полноэкранный режим, без строки заголовка и панели задач, так же, как слайд-шоу или слайд-шоу PowerPoint скрывают оба.

Комментарии:

1. Если я чего-то не упустил, первого блока кода должно быть достаточно. Вы можете попробовать добавить AllowsTransparency = True .

2. Отключение и / или скрытие панели задач Windows: https://social.msdn.microsoft.com/Forums/en-US/e231f5be-5233-4eee-b142-7aef50f37287/disabling-andor-hiding-windows-taskbar? форум = csharpgeneral

3. Извините, я хотел, чтобы пользователь мог нажать полноэкранную кнопку и выполнить желаемое действие во время выполнения. AllowsTransparency вызывает у меня проблемы с изменением значения во время выполнения, но это то, что я пытаюсь сделать, если вы запустите программу с WindowsStyle None и AllowsTransparency True ….. Как я могу заставить пользователя переходить из полноэкранного режима в полноэкранный режим с помощью команды или кнопки?

4. класс панели задач @Jackdaw удаляет панель задач, но не расширяет окно, чтобы занять пространство панели задач. Также кто-то в этом сообщении упоминает, что это не очень хороший способ скрыть панель задач …. есть идеи?

5. Если у вас уже есть полноэкранный режим, есть много вариантов. Логика будет заключаться в том, чтобы установить состояние окна на Normal . Это приведет к некоторому восстановлению. Для достижения этой цели зависит от того, как вы хотите, чтобы ваше приложение работало. Вы можете прослушивать ввод с клавиатуры или щелчки мыши.

Ответ №1:

Я получил то, чего пытался достичь, делая это

 this.WindowState = WindowState.Normal;
this.WindowStyle = WindowStyle.None;
this.WindowState = WindowState.Maximized;
 

Установка значения WindowState в нормальное, а затем в максимальное значение скрывает панель задач.

Я полагаю, что Болкей указывал на это в своих комментариях.

Ответ №2:

С этим кодом проблем нет, он не отображается на панели задач и блокирует панель задач в полноэкранном режиме.

 this.ShowInTaskbar = false;
this.WindowState = WindowState.Maximized;
this.WindowStyle = WindowStyle.None;
this.ResizeMode= ResizeMode.NoResize;
 

Я предполагаю, что вы используете пользовательскую библиотеку тем, и у меня были похожие проблемы.Вы можете попробовать это:

 <Window.Style>
    <Style TargetType="{x:Type Window}"/>
</Window.Style>
 

Ответ №3:

Вам будет достаточно просто применить эти три кода.

 this.ResizeMode = ResizeMode.NoResize;
this.WindowStyle = WindowStyle.None;
this.WindowState = WindowState.Maximized;
 

Кроме того, вы можете реализовать это в коде xaml следующим образом.

 ResizeMode="NoResize" WindowState="Maximized" WindowStyle="None"