91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

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

c#
小樊
87
2024-08-22 21:00:34
欄目: 編程語言

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對象上。這樣就實現了視圖與數據模型的分禨,使代碼更易于維護和測試。

0
辽宁省| 德阳市| 夏津县| 绥江县| 周至县| 雷州市| 甘泉县| 当雄县| 丰都县| 高邑县| 阳高县| 闵行区| 河曲县| 汾阳市| 迁安市| 攀枝花市| 九寨沟县| 沈丘县| 内乡县| 舒兰市| 张掖市| 佛学| 上蔡县| 福贡县| 二连浩特市| 邛崃市| 株洲市| 历史| 通州市| 桓仁| 任丘市| 辰溪县| 香河县| 九台市| 凤阳县| 昌邑市| 靖远县| 满洲里市| 芦溪县| 易门县| 高唐县|