2009-12-17 36 views
0

我正在開發一些wpf應用程序。基本上我有兩種類型的窗口:搜索窗口和插入/編輯窗口。當我開發勝利表格應用程序時,我使用了一種叫做MdiParent的技巧。通過這種方式,我可以將我的caled搜索類型窗口置於「堆棧」中。或者,如果我從meniu調用5個不同的搜索窗口,他們會在一個像tab控件的組件中一個接一個地點擊。通過單擊該選項卡,我可以看到單擊的選項卡窗口的搜索結果。WPF窗口組織技巧

private ProductDiscount frmProductDiscount = null; 

private void ProductDiscountToolStripMenuItem_Click(object sender, EventArgs e) 
{ 

     if ((frmProductDiscount == null) || (!frmProductDiscount.Visible)) 
     { 
      frmProductDiscount = new ProductDiscount(); 
      frmProductDiscount.MdiParent = this; 
      frmProductDiscount.Show(); 
     } 
     else 
     { 
      frmProductDiscount.Activate(); 
     } 
    } 

因此,沒有人可以我建議實施WPF這樣一個窗口,組織技術一個很好的方式,把一些鏈接或例子..這將是一個很大的:正如我所說的是的MdiParent技術,像訣竅幫助我。

回答

1

有一個在WPF沒有Form.MDIParent的當量和MDI不支持MDI佈局的想法。您可以將Windows所有者設置爲另一個窗口。當父母被最小化時,這將最小化孩子。

有關MDI風格功能的示例,請看這個主題link text 其中Marlon Grech寫了類似於我相信您正在嘗試執行的操作。

0

我們開發了類似的應用程序,因爲WPF沒有任何默認的MDI框架,但是因爲它可以完全自定義,所以你可以做的是,你可以創建你的「窗口」的用戶控件而不是Window類型,並且你可以在一個TabControl並且您可以自定義TabControl以使其具有關閉按鈕等。標籤中的Windows出現在Visual Studio,IE等中,當您不想在模式對話框中阻止用戶輸入時,它們適用於此類場景。