我想实现一个'TabManager'控件,它可以像XAML中的Grid一样实例化。这看起来是一个相当普遍的任务,但我似乎无法找到一个教程,我仍然不想重新发明轮子,所以我想知道这里是否有人有一个例子。
我希望XAML生成控件,看起来像这样:
<TabManager>
<TabManager.TabDefinitions>
<TabDefinition Caption="Tab 1"/>
<TabDefinition Caption="Tab 2"/>
<TabDefinition Caption="Tab 3"/>
</TabManager.TabDefinitions>
<TabPanel TabManager.Tab="0">
<TextBlock Text="foo"/>
</TabPanel>
<TabPanel TabManager.Tab="1">
<TextBlock Text="bar"/>
</TabPanel>
<TabPanel TabManager.Tab="2">
<TextBlock Text="baz"/>
</TabPanel>
</TabManager>
TabManager将渲染一些按钮和一些元素以包含TabPanels的子节点 - 例如将它们放入DockPanel或我选择做的任何其他事情;无所谓。
答案 0 :(得分:2)
您是否尝试过<TabControl>
?
例如 -
<TabControl>
<TabItem Header="Tab1" x:Name="Tab1">
<Grid>
<TextBlock Text="foo"/>
</Grid>
</TabItem>
<TabItem Header="Tab2" x:Name="Tab2">
<Grid>
<TextBlock Text="bar"/>
</Grid>
</TabItem>
<TabItem Header="Tab3" x:Name="Tab3">
<Grid>
<TextBlock Text="baz"/>
</Grid>
</TabItem>
</TabControl>