• 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群:
    
  • 相关阅读:
    for循环
    3.9 作业
    while循环
    深浅拷贝
    条件与判断
    可变与不可变
    与用户交互与运算符
    垃圾回收机制
    【AC自动机】文本生成器
    【AC自动机】最短母串
  • 原文地址:https://www.cnblogs.com/BeiJing-Net-DaiDai/p/3227611.html
Copyright © 2020-2023  润新知