簡體   English   中英

將MDI子項置於MDI父對象的前面

[英]Bring mdi child infront of mdi parent objects

我正在Visual Studio 2012中處理Windows應用程序表單,但仍將其卡在UI設計部分中。 實際上,我正在嘗試在所有控件對象(面板,表布局面板)前面打開子窗體。 這個父母形式

當我打開一個子窗體時,所有父窗體的對象都返回

這是我的MDI父表單中的代碼

    frmControlAccount x;
    private void controlToolStripMenuItem_Click(object sender, EventArgs e)
    {
        if (x == null || x.IsDisposed)//to avoid multiple opening of forms
        {
            x = new frmControlAccount();
            x.MdiParent = this;
            x.Show();
        }
        else
        {
            x.Focus();
            x.BringToFront();
        }
    }

由於表格未顯示,我也嘗試了此代碼

    private void MainPage_MdiChildActivate(object sender, EventArgs e)
    {
        if (ActiveMdiChild != null)
        {
            panel1.SendToBack();
            picHomepage.SendToBack();               
        }
        else
        {
            panel1.BringToFront();
            picHomepage.BringToFront();
        }
    }

您不能將控件放在MDI父窗體上,因為這會使MDI父窗體的客戶區變小,並且MDI子窗體僅在MDI父窗體的客戶區中可見。

例如,將面板放置在您的MDI父對象上(別無其他),然后將其與200停靠在一起。
您將看到您的MDI子窗體將可見,但是您不能將它們移到該面板上。 這就是MDI的工作方式。

如果要在MDI父級上顯示圖像,可以通過在繪畫事件中自行繪畫來完成。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM