zoukankan      html  css  js  c++  java
  • WPFMVVM模式简单应用

    首先Model层,建立实体Menu

     public class Menu
        {
           public int ID
           {
               get;
               set;
           }
           public string ClassName
           {
               get;
               set;
           }
           public int ParentID
           {
               get;
               set;
           }
           public int OrderID
           {
               get;
               set;
           }
        }
    

    然后再建立Menu的集合类Menus

     public class Menus
        {
            public List<Menu> menu;
            public List<Menu> getMenu()
            {
                menu = new List<Menu>{
                    new Menu{ID=1,ClassName="菜单1",ParentID=0,OrderID=1},
                    new Menu{ID=2,ClassName="菜单2",ParentID=0,OrderID=2},
                    new Menu{ID=3,ClassName="菜单3",ParentID=0,OrderID=3}
                };
                return menu;
            }
        }
    
    接着View层,建立MenuPage.xaml页面

     <DataGrid AutoGenerateColumns="True"   ItemsSource="{Binding Human}" SelectedItem="{Binding GetOne,Mode=TwoWay}" HorizontalAlignment="Left"   Name="dataGrid1" >
                
            </DataGrid>
            <TextBox Text="{Binding GetOne.ID,Mode=OneWay}" Height="23" HorizontalAlignment="Left" Margin="247,149,0,0" Name="textBox1" VerticalAlignment="Top" Width="120" />
            <TextBox Text="{Binding GetOne.ClassName,Mode=OneWay}" Height="23" HorizontalAlignment="Left" Margin="247,191,0,0" Name="textBox2" VerticalAlignment="Top" Width="120" />
    
    
    最后ViewModel层,建立MenuViewModel类

     public class MenuViewModel : INotifyPropertyChanged
        {
            public event PropertyChangedEventHandler PropertyChanged;
            public List<Menu> Human { get; set; }
            private Menu _getOne;
            public Menu GetOne
            {
                get { return _getOne; }
                set
                {
                    _getOne = value;
                    if (PropertyChanged != null)
                    {
                        PropertyChanged(this, new PropertyChangedEventArgs("GetOne"));
                    }
                }
            }
            public MenuViewModel()
            {
                Human = new Menus().getMenu();
            }    
        }
    
    完毕

  • 相关阅读:
    Linux启动新进程的几种方法及比较[转]
    部署WEB应用的三种方式[转]
    HTML form label
    其他对象的表单
    Input对象2(貌似是独立标签)
    通过表单展示不一样的页面(input对象)
    神奇的表单
    有效地管理页面布局
    css新奇技术及其未来发展
    进一步讨论页面布局的方法
  • 原文地址:https://www.cnblogs.com/baobao2010/p/1824765.html
Copyright © 2011-2022 走看看