【发布时间】:2012-06-26 22:19:32
【问题描述】:
我想实现一个“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 将呈现一些按钮和一些元素以包含 TabPanel 的子项 - 例如。将它们放入 DockPanel 或我选择做的任何其他事情中;应该没关系。
【问题讨论】:
-
您要创建用户控件吗? [链接] WPF 用户控制codeproject.com/Articles/32825/…
-
我更可能从 Panel 派生,就像 Grid 一样。我的问题的重点是如何在 TabManager 类中支持多个孩子。
-
所以基本上你希望 TabManager 像网格布局一样显示选项卡?但你只想要顶部的水平线,所以它看起来像标签?但是 TabControl 已经有了类似的功能。