zoukankan      html  css  js  c++  java
  • mvvm框架下页面与ViewModel的各种参数传递方式

    传单个参数的话在xaml用     Command={Binding ViewModel的事件处理名称}    CommandParameter={Binding 要传递的控件名称}

    ViewModel的事件处理

    public ICommand btn_Click

    get{

      return new RelayCommand<Button>((p)=>

      {

          //处理代码

      });

    }

    }

    多个参数传递:

    在xaml用     Command={Binding ViewModel的事件处理名称}

    xaml页面后台:

    viewmodel对象.txtName=txtName; 

    viewmodel对象.txtPassword=txtPassword;......

    this.DataContext=viewmodel对象

    viewmodel  里面定义全局变量和要传递的控件类型相同public TextBox txtName{get;set;}public TextBox txtPassword{get;set;}

    事件处理:

    public ICommand btn_Click

    get{

      return new RelayCommand(()=>{

        //处理代码

      });

    }

    }

    如果需要事件的参数(sender,e)的话,

    Command={Binding ViewModel的事件处理名称}

       CommandParameter={Binding 要传递的控件名称}

    ViewModel代码如下:

    public ICommand btn_Click

    get{

      return new RelayCommand<Button>((p)=>

      {

        p.Click+=(sender,e)=>{

          //处理代码

         };

      });

    }

    }

    WPF、AE技术交流群:94234450  
    点击加入QQ群:
    
  • 相关阅读:
    Mybatis批处理
    Mybatis兼容C3P0连接池
    一对多,多对一查询
    缓存
    动态sql
    mybatis 日志记录
    python学习day07-encode和decode
    python学习day07---三级目录优化
    python学习day06练习---三级目录
    python学习day06--02字典增删差改以及字符串的一些方法
  • 原文地址:https://www.cnblogs.com/BeiJing-Net-DaiDai/p/3227611.html
Copyright © 2011-2022 走看看