我正在尝试在TabControl的标签中显示WPF ListView
。我正在努力实现以下目标:如果我点击某个按钮,则应创建一个新的TabItem
,并且TabItem
ListView
应显示其自己的内容。
因此,如果我点击另一个按钮,则应创建一个新标签项,并且此第二个标签项中的ListView
应显示另一个内容。
我正在设置DataContext
以在列表视图中显示项目。列表视图中的行显示如下:
XAML:
<GridViewColumn Width="1500">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding myLine}"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
列表视图显示如下:
<TabControl x:Name="tabControl" Grid.Column="2" HorizontalAlignment="Left" Height="372" Margin="10,32,0,0" VerticalAlignment="Top" Width="894">
<TabControl.ItemTemplate>
<DataTemplate DataType="{x:Type local:MyTab}">
<TextBlock Text="{Binding _header}"/>
</DataTemplate>
</TabControl.ItemTemplate>
<TabControl.ContentTemplate>
<DataTemplate DataType="{x:Type local:MyTab}">
<ListView x:Name="myListView" ...></ListView>
</DataTemplate>
</TabControl.ContentTemplate>
</TabControl>
如何使用自己的内容显示各种标签?
答案 0 :(得分:0)
您必须将DataContext中的标签列表绑定到TabControl.ItemsSource
。
<TabControl ItemsSource="{Binding Tabs}"/>
在您的DataContext上有一个名为Tabs的属性,它是您的数据类型的列表或集合;
public IList<MyTab> Tabs { get; private set; }