WPF: TabControl et dynamique TabItems
Je suis en train de créer une interface graphique pour mon projet actuel, l'utilisation de WPF en C#.
Je voudrais avoir des onglets (créé dynamiquement à l'exécution) et chaque onglet devrait ouvrir une table avec les mêmes en-têtes de colonne mais de contenu différent.
Je sais que je pourrais réaliser des onglets et des tables comme ceci:
<Grid>
<TabControl x:Name="tabControl" TabStripPlacement="Left">
<TabItem Header="Example 1" x:Name="tabItem" >
<DataGrid ItemsSource="{Binding TagCollection.Tags}" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Header="Tag" Binding="{Binding Tag}" />
<DataGridTextColumn Header="Description" Binding="{Binding Description}" />
<DataGridTextColumn Header="Value" Binding="{Binding Value}" />
</DataGrid.Columns>
</DataGrid>
</TabItem>
<TabItem Header="Example 2" x:Name="tabItem1" >
<DataGrid ItemsSource="{Binding TagCollection.Tags}" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Header="Tag" Binding="{Binding Tag}" />
<DataGridTextColumn Header="Description" Binding="{Binding Description}" />
<DataGridTextColumn Header="Value" Binding="{Binding Value}" />
</DataGrid.Columns>
</DataGrid>
</TabItem>
</TabControl>
</Grid>
Comment puis-je produire une vue comme ça avec le code derrière? Je ne suis pas habitué à des raccourcis et de telles choses encore, alors peut-être que quelqu'un pourrait me montrer un exemple court?
Merci
KatZe
Faire un peu de googling "MVVM TabControl" ... qui devrait vous aider à aller de l'avant. MVVM fera cela très facile une fois que vous obtenez ce que ça va.
OriginalL'auteur Kat Ze | 2015-09-22
Vous devez vous connecter pour publier un commentaire.
J'ai créer un exemple de projet DynamicTabs.
Quelques exemples de contexte dans le constructeur:
Classes de l'échantillon contexte:
Et XAML:
ItemTemplate est pour partie en-Tête de l'élément tabpage et ContentTemplate pour le Contenu de chaque élément tabpage.
Ze, l'utilisation de la propriété AutoGenerateColumns="False"
OriginalL'auteur Spawn
Veuillez Consulter Les Liens Suivants :
OriginalL'auteur Amol Bavannavar
Avec quelques mises à jour mineures de votre code-behind, vous devriez être en mesure de le faire avec :
Il suffit de remplacer les propriétés dans les liaisons en fonction de vos propres besoins.
OriginalL'auteur xum59