J'ai une vue principale et de nombreux contrôles userc.comment changer de vue selon la commande
La vue principale contient une grille à deux colonnes, avec la première colonne remplie d'une zone de liste dont le datatemplate est constitué d'un contrôle userc et la seconde colonne d'un autre contrôle userc. Ces deux contrôles usuels ont le même contexte de données.
MainView:
<Grid>
//Column defs
...
<ListView Grid.Column="0" ItemSource="{Binding FooList}">
...
<DataTemplate>
<Views: FooView1 />
</DataTemplate>
</ListView>
<TextBlock Text="{Binding FooList.Count}" />
<StackPanel Grid.Column="1">
<Views: FooView2 />
</StackPanel>
<Grid>
FooView1:
<UserControl>
<TextBlock Text="{Binding Foo.Title}">
</UserControl>
FooView2:
<UserControl>
<TextBlock Text="{Binding Foo.Detail1}">
<TextBlock Text="{Binding Foo.Detail2}">
<TextBlock Text="{Binding Foo.Detail3}">
<TextBlock Text="{Binding Foo.Detail4}">
</UserControl>
Je n'ai pas d'IDE ici. Excusez-moi s'il y a une erreur de syntaxe
Lorsque l'utilisateur clique sur un bouton. Ces deux contrôles usés doivent être remplacés par deux autres contrôles usuels, de sorte que le datacontext change, l'interface utilisateur principale restant la même.
-à-dire, FooView1 par BarView1 et FooView2 par BarView2
En bref je veux lier cette vue des changements dans MainView à ma commande (commande de bouton)
Comment puis-je faire cela?
aussi me dire si je pouvais fusionner les paires de UserControl, de sorte que seule vue existe pour chaque viewmodel
-à-dire, FooView1 et FooView2 en FooView et ainsi de suite ...
vérifier ma mise à jour. code ajouté. – Amsakanna