2011-03-29 65 views
5

我在我的窗口中有一個tabcontrol,每個tabitem內我想有一個不同的頁面。
我可以通過使的TabItem內,並在後面的代碼中使用例如框架實現這一點:在XAML中顯示一個窗口內的頁面

frame1.Content = new Pages.MyPage() 

我如何做同樣的事情在XAML?

回答

6
<TabItem> 
    <Frame Source="MyPage.xaml" /> 
</TabItem> 
+0

哈......那麼簡單。謝謝。它不會出現在設計師中。也許這是不可能的? – 2011-03-30 15:09:51

+1

@ steini:我不知道。我從不使用設計師:) – 2011-03-31 03:04:51

1

你可能不需要框架。像這樣的東西應該工作。

<TabControl> 
    <TabItem> 
    <MyPage Name=frame1 /> 
    </TabItem> 
    <TabItem> 
    <MyPage Name=frame2 /> 
    </TabItem> 
</TabControl> 

如果你想在框架只是做:

<TabItem> 
    <Frame> 
    <MyPage Name=frame1 /> 
    </Frame> 
</TabItem> 
+1

第一個解決方案導致一個InvalidOperationException:「頁只能有窗口或框架作爲父」。第二個,「框架不支持直接內容」。 – 2011-03-29 20:23:49

+0

MyPage是否擴展了UserControl?如果不是,它延伸到哪一類? – dcarneiro 2011-03-29 20:30:07

+0

我不知道。這只是一個普通的頁面。我怎麼知道? – 2011-03-29 20:57:51