Ich versuche, ein WPF ListView
in einem Register TabControl anzuzeigen. Ich versuche folgendes zu erreichen: wenn ich auf eine Schaltfläche klicke, sollte eine neue TabItem
erstellt werden und in dieser TabItem
sollte eine ListView
mit eigenem Inhalt angezeigt werden.WPF ListView in Registerkarten von TabControl mit anderem Inhalt anzeigen
Wenn ich also auf eine andere Schaltfläche klicke, sollte ein neuer Tab-Eintrag erstellt werden und der ListView
in diesem zweiten Tab-Eintrag sollte einen anderen Inhalt anzeigen.
Ich setze DataContext
, um Elemente in der Listenansicht anzuzeigen. Die Linien in der Listenansicht werden wie folgt angezeigt:
XAML:
<GridViewColumn Width="1500">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding myLine}"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
Die Listenansicht wie folgt angezeigt:
<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>
Wie kann ich verschiedene Registerkarten mit ihrem eigenen Inhalt anzeigen?
Kann ich denselben ListView verwenden, um andere Inhalte anzuzeigen und in der Lage zu sein, zwischen Tabs richtig zu wechseln? – DrGrid
Nein, jede Registerkarte erhält aufgrund der Verwendung von DataTemplates eine eigene ListView. – Kolky
Ich denke, das wird Probleme verursachen, weil meine ListView Datenvirtualisierung ist, und in XAML habe ich 1 ListView mit einem Namen, der festgelegt ist (myListView). Ist es möglich, eine einzelne Listenansicht zu verwenden, um verschiedene (Datei-) Inhalte anzuzeigen? – DrGrid