MVVM (Model-View-ViewModel) C# est la technique de génération des applications clientes qui contrôlent les fonctionnalités de base de la plate-forme WPF, permettant de faciliter les tests unitaires des fonctionnalités de l'application. MVVM (Model-View-ViewModel) est un modèle architectural qui signifie trois composants différents. Il s'agit du modèle de conception du logiciel qui est conçu pour séparer les commandes de l'interface utilisateur et la logique du programme.
MVVM (Model-View-ViewModel) est le modèle de conception logicielle qui symbolise trois composants individuels : Model, View et ViewModel.
Pour comprendre les trois composants, voyons comment ils fonctionnent ensemble comme suit :
L'utilisation de Model-View-ViewModel (MVVM) est le modèle de conception architecturale de logiciels qui sépare les contrôles de l'interface utilisateur et la logique des programmes. Il est également appelé Model-View-Binder et est développé par les architectes Microsoft.
Les trois composants agissent comme une équipe en se référençant les uns les autres selon le modèle suivant :
L'essentiel est que le ViewModel et la View soient capables de communiquer selon deux méthodes appelées Data Bindings. Le principal composant de communication est l'interface appelée INotifyPropertyChanged.
Pour utiliser cette méthode, la vue doit modifier les informations dans le ViewModel tout au long de l'entrée du client, et le ViewModel doit mettre à jour la vue avec les informations qui ont été mises à jour via les processus dans le modèle ou mises à jour. informations du référentiel. L'architecture MVVM (Model View ViewModel) accorde une grande importance à la séparation des préoccupations pour chaque couche. En séparant les couches, il y a encore plus d'avantages. Voyons les choses suivantes.
Voyons les responsabilités de ViewModel comme suit :
Pour créer le nouveau projet d'application WPF pour une meilleure compréhension de ViewModel.
Créez ensuite trois dossiers pour Model, View et ViewModel et supprimez le ManiWindow.xaml existant rien que pour recommencer.
Ensuite, construisez de nouveaux éléments et chacun des correspondants aux composants séparés.
Dans le fichier View, modifiez App.xaml pour pointer vers la nouvelle vue comme suit.
Code :
ViewModel :
Dans ViewModel, commencez par créer le ViewModel, et la classe doit inclure l'interface appelée INotifyPropertyChanged pour indiquer l'événement PropertyChangedEventHandler et pour créer la méthode permettant de déclencher l'événement. Ensuite, déclarez le champ et la propriété associée et assurez-vous d'appeler la méthode OnPropertyChanged () dans les propriétés comme accès défini. Voyons l'exemple par programme dans lequel le constructeur est utilisé pour afficher le modèle et fournit les données au ViewModel.
Code :
using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Runtime.CompilerServices; using System.Text; using System.Threading.Tasks; using MyMVVMProject.Model; namespace MyMVVMProject.ViewModel { // the interface INotifyPropertyChanged implements for supporting the binding purpose public class HelloWorldViewModel : INotifyPropertyChanged { private string _helloString; public event PropertyChangedEventHandler PropertyChanged; public string HelloString { get { return _helloString; } set { helloString = value; OnPropertyChanged(); } } /// <summary> /// when the Property modifies it Raises OnPropertychangedEvent /// </summary> /// <param name="name">Property name represented by String</param> protected void OnPropertyChanged([CallerMemberName] string name = null) { PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name)); } public HelloWorldViewModel() { HelloWorldModel hwModel1 = new HelloWorldModel(); _helloString = hwModel1.ImportantInfo; } } }
Modèle :
Ensuite, venez à la création du modèle, il propose les données pour ViewModel en les faisant glisser depuis le référentiel, et il reviendra également au référentiel à des fins de stockage. Ici, le programme est expliqué avec la méthode GetInfo () où il renvoie la simple liste
Code :
private List<string> GetInfo () { repositoryData = new List<string>() { "Hello", "world" }; return repositoryData; }
Voyons le codage suivant :
Code :
Vue :
Enfin, nous devons créer une vue ; ce n'est rien d'autre que d'inclure quelques codes dans le XAML ; la fenêtre nécessite les références à l'espace de noms ViewModel. Il est ensuite mappé en XAML. L'essentiel est de s'assurer de lier la propriété de ViewModel, qui affiche le contenu de l'étiquette.
Code :
Dans cet article, nous avons vu que le MVVM C# facilite la collaboration entre les concepteurs et les développeurs avec un minimum de complications techniques.
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!