Maison >développement back-end >C++ >Comment naviguer entre les vues dans une application WPF MVVM?
Afficher la navigation dans l'application WPF MVVM
Dans une application WPF MVVM, la navigation dans les vues implique de définir le DataContext du ContentControl sur le ViewModel correspondant. Vous pouvez facilement changer de vue au sein d'un ViewModel parent en liant un ContentControl à la propriété ViewModel de ce ViewModel.
Créer la classe de base ViewModel
Définissez une classe de base pour votre ViewModel, telle que BaseViewModel, qui contient des propriétés et des interfaces publiques, telles que INotifyPropertyChanged. Cette classe de base fournira une structure commune à tous les ViewModels.
Établir la liaison de données dans App.xaml
Dans le fichier App.xaml, spécifiez le DataTemplate qui connecte la vue à son ViewModel correspondant. Par exemple :
<code class="language-xml"><DataTemplate DataType="{x:Type ViewModels:MainViewModel}"> <MainView/> </DataTemplate></code>
Définir ViewModel dans MainViewModel
Dans MainViewModel, créez une propriété ViewModel qui peut être définie sur un autre ViewModel :
<code class="language-csharp">public BaseViewModel ViewModel { get; set; }</code>
Afficher la vue
Dans votre MainWindow.xaml, utilisez un ContentControl pour afficher le ViewModel actuel :
<code class="language-xml"><ContentControl Content="{Binding ViewModel}"/></code>
Navigation à partir des sous-vues
Pour naviguer d'une sous-vue à une autre vue, ajoutez des liaisons de la sous-vue aux commandes du MainViewModel. Par exemple :
<code class="language-xml"><!-- 省略子视图中的绑定示例,因为原文未提供 --></code>
Définir les commandes dans MainViewModel
Dans MainViewModel, définissez une commande qui définit la propriété ViewModel sur le ViewModel souhaité :
<code class="language-csharp">public ICommand DisplayPersonView => new ActionCommand( () => ViewModel = new PersonViewModel(), () => !IsViewModelOfType<PersonViewModel>() );</code>
En suivant ces étapes, vous pouvez parcourir de manière transparente les vues dans votre application WPF MVVM. Cette approche fournit un moyen flexible et facile à maintenir pour implémenter des transitions de vue dans n'importe quelle partie de l'application.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!