2014-10-18 172 views
0

我正在實現一個遊戲的編輯器,並遇到了一個輕微的不便,我似乎無法弄清楚。我的Google-fu也無法找到答案,無論我想要的是甚至可能。WPF窗口/用戶控件繼承XAML

我的編輯器基本上有一個它管理的每個對象的詳細信息窗口,這個詳細信息窗口總是相同的:一個選項卡控件,帶有一個名爲「屬性」的Tab,以及一個或多個特定於窗口對象的選項卡是爲了。

我覺得有一個BaseEditor.xaml,其中帶有定義了屬性選項卡的TabControl,你可以根據需要擴展和添加更多的選項卡。

我已經嘗試了多個解決方案,一個是通過製作一個UserControl,在其上添加一個TabControl,然後向它添加一個CompositeCollection,它綁定到代碼隱藏中的屬性,然後我可以在技術上修改將usercontrol添加到窗口。然而,它絲毫沒有工作,我也不滿意這個事實,我必須將UserControl添加到窗口,而不是從窗口擴展。

所有的一切,這是我第一次嘗試:

<UserControl> 
    <Grid> 
     <TabControl HorizontalAlignment="Left" Height="300" VerticalAlignment="Top" Width="300"> 
      <TabControl.ItemsSource> 
       <CompositeCollection> 
        <CollectionContainer Collection="{Binding TabItems}" /> 
        <TabItem Header="Properties" /> 
       </CompositeCollection> 
      </TabControl.ItemsSource> 
     </TabControl> 
    </Grid> 
</UserControl> 

然後在它的使用像這樣的窗口:

<Window> 
    <Grid> 
     <UserControl> 
      <UserControl.TabItems> 
       <TabItem Header="Test" /> 
      <UserControl.TabItems> 
     </UserControl> 
    </Grid> 
</Window> 

這是僞代碼,但表示,它不工作,它只會顯示屬性標籤,就是這樣。

任何指針將不勝感激!

回答

0

我最終使您註冊選項卡上的需求的TabControl(例如,通過

一個 RegisterTab - 方法的手段,而不是試圖通過XAML來定義它。