2011-05-09 46 views
2

當我執行此代碼:顯示「父」的形式在正常狀態下

this.WindowState = FormWindowState.Minimized; 
_fullscreenForm.Show(); 
_fullscreenForm.Focus(); 

我得到最小化當前窗口和_fullscreenForm創建最小爲好。我應該如何在正常狀態下顯示它?

UPDATE

很顯然,我已經嘗試添加_fullscreenForm.WindowState = FormWindowState.Maximized;並不起作用。

更新2

不,我們不能改變最小化當前的形式,另一種的外觀,因爲會有這些行之間的一些工作秩序,所以我們實際上需要:

  1. 隱藏當前的形式
  2. 做了一些工作
  3. 顯示與結果
另一種形式

答案

的形式出現在VS窗口的後面,所以我們需要Activate()它。

+0

您可以發佈這個應該發生的事件嗎? 'this'和'_fullscreenForm'之間有什麼關係。還有,你試圖設置'_fullscreenForm.WindowState'屬性爲'FormWindowState.Normal' ??你得到什麼,你想得到什麼。 – ja72 2011-05-09 03:18:02

+0

@ ja72:呃,事件?我需要在我的代碼被調用後顯示_fullscreenForm。我最小化了_fullscreenForm(正如我在我的Q中所說的)。 「這和_fullscreenForm之間有什麼關係?」 - 它有多重要? '_fullscreenForm'只是當前表單的私有屬性。 – zerkms 2011-05-09 03:19:32

回答

1

在最小化當前表單之前嘗試顯示_fullscreenForm

_fullscreenForm.Show(); 
this.WindowState = FormWindowState.Minimized; 
_fullscreenForm.WindowState = FormWindowState.Normal; 
_fullscreenForm.Focus(); 

編輯:

與你原來的代碼,嘗試

this.WindowState = FormWindowState.Minimized; 
_fullscreenForm.Show(); 
_fullscreenForm.TopMost = true; 
_fullscreenForm.Focus(); 
+0

此代碼爲我們提供了另一個工作流程:* show * - * hide *。但我嚴格按照我所描述的順序來使用它:1)我們隱藏表單2)我們做一些有用的工作3)我們用結果顯示另一個表單。 – zerkms 2011-05-09 03:23:55

+0

@zerkms當你運行你的原始代碼時,'_fullscreenForm'在當前窗體被最小化之後正常顯示,但如果你運行了視覺模塊,窗體就在它後面。在嘗試之前嘗試最小化VS。 – 2011-05-09 03:28:19

+0

@zerkms嘗試'_fullscreenForm.TopMost = true;'看我的編輯 – 2011-05-09 03:31:42

0

這是因爲Windows負載從最小化的程序新視窗也降到最低。因此,只需設置的_fullscreenFormMaximizedNormal,之後Show()

+0

我不需要它*最大化*,我需要它的正常大小。 – zerkms 2011-05-09 03:18:59

+0

然後我相信你打開這個孩子的形式,然後不能最大限度地單獨使用。你必須將它從主窗體中分離出來。 – ariel 2011-05-09 03:20:00

+0

什麼是「兒童形式」?我可以用鼠標將它帶回屏幕,點擊任務欄。 – zerkms 2011-05-09 03:21:06