2015-10-22 17 views
0

我正在與我的C#表單打架。c#表單事件,如「GotFocus」/「Enter」或類似

我在我的工具中得到了2個表單。我們說Main和Second。

我用Second.ShowDialog()打開第二個Main。 主現在顯示在背景中,不可用。 之後,我關閉第二個像Second.Close();

Now Main再次顯示。 有我的問題在。 我必須在Main中運行一個方法,並且想通過一個事件來運行它。 但我只是無法找到任何被關閉後被調用的事件。

沒有「GotFocus」或「Enter」... 我嘗試了「Shown」或「SetVisible」之類的東西,但它們沒有被觸發。

我該怎麼辦?

+0

這裏是之前發佈的同樣的問題。我認爲你可以用它來解決你的問題。 http://stackoverflow.com/questions/11788628/focus-textbox-on-main-form-after-closing-a-second-form – vercin

+0

這不是我真正想要的... –

+0

你可以實現觀察者模式實現,然後你發現從第二個對話框發佈你的消息到第一個。 – vercin

回答

0

我沒有真正理解這裏的問題,但也許你應該考慮使用UserControls而不是ShowDialog,而不是ShowDialog,如果它符合你的項目需求 - 這就是你如何在一個Frame上下文中保留兩個視圖。

如果你堅持幀到幀導航 - 有一種叫做消息傳遞的已知模式,它可以讓你在不同的對象/實例/頁面/幀之間進行通信,你也可以使用它。

相關問題