MVVM (Model-View-ViewModel) — это паттерн проектирования, который разделяет логику программы и интерфейс пользователя. Он широко используется в WPF, Xamarin, MAUI и Blazor.
🚩Как они взаимодействуют?
ViewModel обновляет Model (через
Command и INotifyPropertyChanged). Model уведомляет ViewModel об изменениях.
View автоматически обновляется (через Data Binding).
🚩Пример MVVM в WPF
Model (Модель)
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
ViewModel (Логика)
using System.ComponentModel;
using System.Runtime.CompilerServices;
public class PersonViewModel : INotifyPropertyChanged
{
private string _name;
public string Name
{
get => _name;
set { _name = value; OnPropertyChanged(); }
}
public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged([CallerMemberName] string propertyName = null)
=> PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
View (XAML)
<TextBox Text="{Binding Name, Mode=TwoWay}" />
<TextBlock Text="{Binding Name}" />Ставь 👍 и забирай 📚 Базу знаний