C# MVVM模式在WPF中的应用示例

   2024-10-01 5390
核心提示:MVVM(Model-View-ViewModel)是一种软件架构模式,用于将应用程序的用户界面逻辑与业务逻辑分离。在WPF应用程序中使用MVVM模式

MVVM(Model-View-ViewModel)是一种软件架构模式,用于将应用程序的用户界面逻辑与业务逻辑分离。在WPF应用程序中使用MVVM模式可以使代码更易于维护和测试。下面是一个简单的C# MVVM模式在WPF中的应用示例:

Model(数据模型):

public class Person{    public string Name { get; set; }    public int Age { get; set; }}

ViewModel(视图模型):

public class MainViewModel : INotifyPropertyChanged{    private Person _person;    public Person Person    {        get { return _person; }        set        {            _person = value;            OnPropertyChanged(nameof(Person));        }    }    public MainViewModel()    {        Person = new Person { Name = "John Doe", Age = 30 };    }    public event PropertyChangedEventHandler PropertyChanged;    protected void OnPropertyChanged(string propertyName)    {        PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));    }}

View(视图):

<Window x:Class="MVVMExample.MainWindow"        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"        xmlns:local="clr-namespace:MVVMExample"        Title="MVVM Example" Height="200" Width="300">    <Window.DataContext>        <local:MainViewModel/>    </Window.DataContext>        <Grid>        <StackPanel>            <TextBlock Text="Name:"/>            <TextBox Text="{Binding Person.Name, Mode=TwoWay}"/>                        <TextBlock Text="Age:"/>            <TextBox Text="{Binding Person.Age, Mode=TwoWay}"/>        </StackPanel>    </Grid></Window>

在这个示例中,我们定义了一个简单的Person类作为数据模型,一个MainViewModel类作为视图模型,用于管理Person对象的数据,以及一个MainWindow作为视图,使用DataBinding将视图模型和视图进行绑定。

当运行这个示例时,窗口中会显示一个包含姓名和年龄输入框的界面,用户输入的数据会被绑定到视图模型中的Person对象上。这样就实现了视图与数据模型的分禨,使代码更易于维护和测试。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号