Wpf 带有新选项卡按钮的选项卡控件

Wpf 带有新选项卡按钮的选项卡控件,wpf,xaml,caliburn.micro,Wpf,Xaml,Caliburn.micro,我有以下选项卡控件: <TabControl x:Name="Networks"> <TabControl.ItemTemplate> <DataTemplate> <StackPanel Orientation="Horizontal"> <TextBlock Text="{Binding DisplayName}" /> <Button Content="X" cal:M

我有以下选项卡控件:

<TabControl x:Name="Networks">
  <TabControl.ItemTemplate>
    <DataTemplate>
      <StackPanel Orientation="Horizontal">
        <TextBlock Text="{Binding DisplayName}" />
        <Button Content="X" cal:Message.Attach="CloseItem($dataContext)" />
      </StackPanel>
    </DataTemplate>
  </TabControl.ItemTemplate>
</TabControl>

正如您所看到的,它使用Caliburn.Micro绑定到ViewModel,但我认为这并不重要。 如何在右侧的控件上添加按钮以添加新的选项卡项?我在寻找简单的解决办法。我已经搜索过了,但还没有找到一个简单的实现方法


谢谢

你可以让
项目资源在标签的开头有一个a,在结尾有一个显式的
标签项目
,它可以在点击时添加一个新项目(在某些浏览器中是
+
-tab)。

我已经尝试过了,但是绑定似乎不起作用。我有一个BindableCollection,我读到你只能绑定可自由使用的集合。@errorcode007:在
CollectionContainer
中没有
DataContext
,你也不能使用
ElementName
RelativeSource
)。当然,您可以在VM中创建集合并处理简单的分配。@errorcode007:还有
IEditableCollectionView
仅用于此用例,请参阅注释中链接的副本,有比此更好的解决方案。使用此解决方案处理
SelectedItem
的最佳方法是什么?我当前在单击“新建”选项卡时出错,因为它试图将我的显式
TabItem
转换为
CompositeCollection
ItemSource
绑定到的类型。@NathanFriend:不确定,也许您可以在
TabItem
上设置一些属性以使其不可选择(禁用部件/焦点,诸如此类)。或者,您可以绑定到类型为
object
的属性,并创建另一个正确类型的属性,该属性返回
as
,以便新项目选项卡的属性仅为
null
。是否可能重复?