Dot-Net

Visual Studio - 在表單中隱藏最大化按鈕

  • September 19, 2019

如何從表單中刪除最大化按鈕?我已經禁用了它,但它仍然顯示,它只是不起作用。我想要一個只有關閉和最小化按鈕的表單。這是一個 Windows 窗體應用程序,我使用的是 Visual Studio 2010。

如果不繪製自己的視窗框架,就不可能隱藏最大化按鈕。

禁用它會告訴使用者他無法最大化良好 UX 的表單。隱藏它並沒有幫助,因為點兩下標題欄仍然會最大化視窗(如果您沒有禁用最大化)。

您可以設置FormBorderStyleFixedToolWindowSizableToolWindow,但隨後窗體將不會顯示在 Windows 工作列或ALT+TAB視窗中。 請參閱下面的更新。

您可以隱藏整個ControlBox也將刪除的內容Minimize以及Close上下文菜單。

選擇你的毒藥!


更新(15 年 12 月 24 日)

我決定用各種選擇重新審視風景,似乎:

  1. 與文件所說的相反,在Windows 7及更高版本中,設置FormBorderStyleFixedToolWindow/SizableToolWindow不再隱藏工作列或ALT+TAB視窗中的應用程序。在這種情況下專門決定顯示/隱藏效果(感謝@pinowthebird 推動我重新查看)。ShowInTaskbar
  2. 設置FormBorderStyleFixedDialog還隱藏最大化/最小化按鈕並顯示在工作列中,儘管預設圖示現在失去(不知道為什麼)。
  3. 設置MaximizeBox = False不會隱藏按鈕,這再次與文件相反。它只是禁用它(並通過點兩下工具欄最大化功能)。
  4. 設置兩者 MaximizeBox = FalseMinimizeBox = False隱藏它們,不管FormBorderStyle.

以下是一些截圖:

<code>FormBorderStyle</code> = <code>FixedToolWindow/SizableToolWindow</code> <code>FormBorderStyle</code> = <code>FixedDialog</code> <code>MaximizeBox = False</code> 兩者 <code>MaximizeBox = False</code> 和 <code>MinimizeBox = False</code>

結論:

根據您的要求,您可以選擇 1、2 或 3。希望這對未來的訪問者有所幫助。

***免責聲明:***這些測試是在 VS 2015、.Net 4.6 和全新的 WinForm 應用程序中完成的。文件說這些屬性自 .Net 1.1 起就可用。但是,正如您在螢幕截圖中看到的那樣 - 對文件持保留態度!作業系統在結果中也起著至關重要的作用。

引用自:https://stackoverflow.com/questions/7045969