2009-11-24 34 views
0

我的應用程序在啓動時顯示一個登錄框,我已經能夠使它成爲最頂層的,但它沒有被設置爲專注,直到我點擊它。C#Windows窗體:最上面的對話框沒有關注

你如何做到這一點,它會自動聚焦?

+0

您可以發佈您的代碼,您正在使用,以顯示登錄表單? – TLiebe 2009-11-24 18:07:07

回答

3

您可以顯式調用Activate(),例如在登錄對話框的Load事件處理程序中。

或者,您可以通過調用ShowDialog()方法而不是Show()來模式地顯示對話框,這會導致它被聚焦。

我懷疑發生了什麼,雖然是你擁有的窗口已完全激活之前顯示的對話框,並且主要形式是偷回焦點。也許你試圖在主窗體的構造函數或Load事件處理函數中顯示登錄對話框?如果是這種情況,最好在修改引導加載程序(Program.cs)以顯示主窗體之前顯示登錄對話框。

(正如已經建議,如果你想有一個更好的建議職位的代碼。)

+1

與ShowDialog一起使用登錄表單。 – scottm 2009-11-24 18:09:43