Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何抑制最大化可调整大小的WPF窗口的能力_C#_.net_Wpf_Windows_User Interface - Fatal编程技术网

C# 如何抑制最大化可调整大小的WPF窗口的能力

C# 如何抑制最大化可调整大小的WPF窗口的能力,c#,.net,wpf,windows,user-interface,C#,.net,Wpf,Windows,User Interface,我有一个WPF应用程序,它有一个WindowStyle为none的窗口,并且可以调整大小。我不希望用户能够最小化或最大化窗口,所以我只是不公开这些操作的按钮。这很好,但我刚刚意识到,在Win7+上,只需将窗口拖动到屏幕顶部附近,就可以最大化窗口 是否有某种方法可以抑制或覆盖此行为?谢谢。请尝试以下操作: ResizeMode="NoResize" WindowStyle="ToolWindow" WindowStyle=ToolWindow删除窗口右上角的最小/最大图标。ResizeMode=

我有一个WPF应用程序,它有一个WindowStyle为none的窗口,并且可以调整大小。我不希望用户能够最小化或最大化窗口,所以我只是不公开这些操作的按钮。这很好,但我刚刚意识到,在Win7+上,只需将窗口拖动到屏幕顶部附近,就可以最大化窗口


是否有某种方法可以抑制或覆盖此行为?谢谢。

请尝试以下操作:

ResizeMode="NoResize" WindowStyle="ToolWindow"

WindowStyle=ToolWindow删除窗口右上角的最小/最大图标。ResizeMode=NoResize会阻止窗口的大小调整。

将以下几个问题结合起来:

private void image_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
   if (e.LeftButton == MouseButtonState.Pressed)
   {
      //This prevents win7 aerosnap
      if (this.ResizeMode != System.Windows.ResizeMode.NoResize)
      {
         this.ResizeMode = System.Windows.ResizeMode.NoResize;
         this.UpdateLayout();
         DragMove();
         this.ResizeMode = System.Windows.ResizeMode.CanResizeWithGrip;
      }
      else
         DragMove();
   }
}

可能的重复是这个问题的反面。我不是一个专门的WPF开发人员,所以我尝试的只是不公开最小化/最大化按钮,在产品开始在Windows7上使用之前,这些按钮工作得很好。我寻找要处理的最大化事件,但没有。我现在需要WindowsStyle=none,因为我们有自定义窗口UI约定-在所述约定中,我只是没有包括最小/最大按钮。它还需要调整大小。嗯。。。可能在这种情况下,您可以修复MinWidhth/MaxWidth和MinHeight/MaxHeight以强制使用特定的大小。