none
wpf mvvm模式下,MainWindom类中的值如何传递给ViewModel层中的类? RRS feed

  • 问题

  • 例如xx控件的事件触发时将某个控件的属性赋值给一个变量,将此变量的值传给ViewModel层中的类,由ViewModel层中的类接受该值。怎么做?
    2016年9月3日 15:38

答案

  • 您好,

    我们可以在设置这个变量值的时候来同时设置ViewModel中某项的值。以下代码供您参考。

    private string _valueInMainWindow;
    
    public string PropertyInMainWindow
    {
        get {
            return _valueInMainWindow;
        }
        set
        {
            _valueInMainWindow = value;
            //通知ViewModel值的变化
            ViewModel model = this.DataContext as ViewModel;
            model.XXValue = value;
        }
    }

    另外,建议您直接将控件的值绑定到ViewModel上去,这样才更符合MVVM的原则。

    Best Regards,
    Li Wang


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2016年9月4日 4:27