公告版位

How to show Windows Form in fullscreen mode using C#.

在C#中,只要簡單設定Form物件的屬性就可以達到全螢幕的效果,可從設計頁或用程式碼方式去設定,而依據使用情境又可使用不同方式來實作,這邊說明兩種情境:

情境一:程式全螢幕阻擋

讓程式全螢幕並且永遠在最上層,無法縮小

方法一:設計頁設定屬性

於設計頁介面點選Form物件設定以下屬性:

  1. FormBorderStyleNone,去掉外框。
  2. WindowStateMaximized,視窗最大化。
  3. TopMosttrue,最上層。

方法二:使用程式碼設定屬性

於InitializeComponent()之後加入:

this.FormBorderStyle = FormBorderStyle.None;
this.WindowState = FormWindowState.Maximized;
this.TopMost = true;

情境二:程式全螢幕可縮小

讓程式全螢幕,當用切換到別的程式時,視窗縮小

屬性設定方法同上,除了TopMost不設定(為false),另外Form還需實作Deactivate事件

        private void Form1_Deactivate(object sender, EventArgs e)
        {
            this.WindowState = FormWindowState.Minimized;
        }
文章標籤
創作者介紹

小殘的程式光廊

emn178 發表在 痞客邦 PIXNET 留言(3) 人氣()


留言列表 (3)

發表留言
  • 周若婷
  • c++也適用 感謝您~
  • 不客氣

    emn178 於 2012/04/05 19:48 回覆

  • 訪客
  • 打開資料夾或程式想要最大化視窗

    請問這方法如何操作?是要在 "執行" 裡輸入甚麼?
    我是 window7 64bit
    謝謝
  • 如果你的意思是指呼叫外部程式的時候,開啟時要最大化視窗,根據MSDN文件, 設定以下
    Process.StartInfo.WindowStyle = ProcessWindowStyle.Maximized;
    應該可以達到目的

    emn178 於 2012/05/25 21:23 回覆

  • 訪客
  • 不是呼叫外部程式
    僅只是希望在打開window的任何項目,都是顯示最大視窗
    例如打開桌面上"我的電腦"捷徑時,顯示全視窗
    而不是一半
    我有裝autosizer但無效,
    他不會記憶已放到最大的設定
    下次開機,還是顯示一半視窗
    版主可有解法?


  • 網路上找到的請參考
    http://superuser.com/questions/51593/how-to-open-windows-explorer-maximized-in-vista

    emn178 於 2012/05/27 18:49 回覆

找更多相關文章與討論