C#中winform中panel重疊無法顯示問題

  • 2019 年 10 月 13 日
  • 筆記

C#中winform中panel重疊無法顯示問題:

  最近開發一個項目有個需求是需要多個模式來回切換的,本來考慮使用多個窗口來實現這個功能,但是這樣做浪費資源,而且工作量大,所以想到使用panel控制項來解決這個問題。但是在這個過程中遇到了一個問題,就是當多個panel控制項重疊在一起時會出現有些panel控制項中的內容無法顯示,開始還以為是我自己手誤將panel控制項刪除了,但是在程式碼中調用無法顯示的控制項編譯器編譯時並沒有報錯。所以可以肯定沒有刪除控制項。最後發現原來是C#winform窗體中控制項的層級搞錯了,所以我給出以下解決方法。

 解決方法:

  首先將不見的控制項找出來,在VS2017中打開控制項窗口,點擊視圖->其他窗口->文檔大綱,點擊打開文檔大綱。如下圖所示:

  在文檔大綱中我們可以看到窗體中的所有控制項,你現在要做的就是將你需要的控制項拖動到相應的層級再重新生成解決方案即可,如下圖所示:

 

  在使用多層控制項重疊時,很容易出現上面的問題,如果對精度要求不高的話可以使控制項之間有一點的錯開,這樣可以避免這樣的問題,也可以將控制項設置成大小不同的幾個重疊,方法因需求而定。

  以上就是我給出的方法,希望可以幫助到你,如果你遇到同樣的問題或者你有更加好的解決辦法,希望你可以給我留言。