首頁 » C#開發 » [C#] Winform視窗重新顯示到最上層

[C#] Winform視窗重新顯示到最上層

作者:

分類:

C# winform如果要同時顯示第二個表單,並可以互相切換使用。這時不能使用ShowDialog(),需要用Show()來顯示。

但使用上第二個視窗常會在切換其他視窗時,很容易會被排到後面,這時重複呼叫Show()就再也不會回到最上層。

這邊有兩個方法可以讓視窗不會再被洗到後面去。

winform TopMost
winform TopMost

方法

一種方法是用TopMost = true,會讓表單顯示在最上層。

private Form f = new Form();

private void ShowForm()
{
    f.TopMost = true;
    f.Show();
}

第二種方法很有趣,而且比第一種方法好用,不會強制讓表單顯示在最上層,可以保有比較多彈性。

方法是將視窗先最小化再重新設回預設大小的視窗。

private Form f = new Form();

private void ShowForm()
{
    f.WindowState = FormWindowState.Minimized;
    f.Focus();
    f.Show();
    f.WindowState = FormWindowState.Normal;
}

參考資料

「cian」的個人頭像

留言

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *