2014-09-10 16 views
2

我的主窗體上有一個GMap.NET控件,然後我有第二個窗體,當用戶點擊一個按鈕時會顯示。問題在於,當用戶離開第二個窗口並從主窗體懸停在GMap控件上時,主窗體將出現在前面。當我在前面的第二個窗口上懸停在主窗口的其餘部分時,不會發生這種情況。此外,我還有另一種表單,當程序搜索某些數據時會顯示,當用戶懸停在地圖上時,這個表單也會消失。當我將鼠標懸停在GMap.NET控件上時,爲什麼我的表單處於頂層?

我希望我解釋得很好,基本上當我將鼠標懸停在地圖上時,主窗口就位於前面。只有當我的項目有另一種形式時纔會發生,而不是當前有任何其他窗口如firefox或其他窗口。

所以我的問題是:爲什麼會發生這種情況,我可以改變這種行爲?它是GMap.NET控件的標準嗎?我正在使用版本1.7.0.0控制順便說一句。

回答

3

這將有助於看到如何顯示窗體的一些代碼,但它聽起來像你正在做的事情像secondwindow.Show()而不是secondwindow.ShowDialog(),然後從GMap的事件OnEnter正在做一個Focus()。然後,當你在它前面有「其他表單」時,它會以限制對父表單(ShowDialog()等)的訪問的方式打開。

+0

showDialog()適用於我的情況,但沒有代碼從我至少爲OnEnter做一個焦點()...但是,因爲這個作品非常感謝你! – asdasdad 2014-09-11 06:26:50

5

必須使用

GMap1.DisableFocusOnMouseEnter = true; 

我將此代碼添加到我的程序和解決的問題。

+0

此代碼在GMap.Net版本1.7中工作 – 2015-11-30 18:27:44

相關問題