我想要的是一个控件,它的功能就像选项卡控件一样,但不是在顶部有选项卡,项目将显示在侧面的列表框中。我想这是可能的,但没有找到任何例子,我希望有人在这里做了类似的事情。
答案 0 :(得分:12)
WPF控件旨在实现您想要的功能。在完全替换可视化表示的同时重用控制功能。您必须为ControlTemplate
创建自己的TabControl
。你可以找到TabControl ControlTemplate Example on MSDN。您还必须学习Control Authoring Overview on MSDN。
我实际上发现Silverlight 3文档更容易消化,尽管在控制样式方面存在一些差异,但基本概念仍然相同。您可以阅读Customizing the Appearance of an Existing Control by Using a ControlTemplate on MSDN以了解控件模板,然后学习TabControl Styles and Templates以了解在Silverlight中创建自己的控件模板所需的内容。
您可以使用Expression Blend在WPF中提取默认的TabControl
模板。
答案 1 :(得分:11)
您根本不需要使用TabControl
。您可以将ListBox
绑定到项目列表,并在其旁边添加ContentControl
,绑定到所选项目:
<DockPanel>
<ListBox Name="listBox"
DockPanel.Dock="Left"
ItemsSource="{Binding Items}"
DisplayMemberPath="Name"/>
<ContentControl Content="{Binding SelectedItem, ElementName=listBox}"
ContentTemplate="{StaticResource theTemplate}"/>
</DockPanel>