MVVM、MVVMLight、MVVMLight Toolkit 之我的理解2

 

MVVM Light中的消息, 上一篇中功能已经实现了,但是没有写到消息。我觉得上一篇文字已经很多,就没写进去。

MVVM中消息主要用到Messenger这个类,而它主要有两个方法,Register 和Send ,相互对应

Send负责发送 Register 负责接收

例子中

Messenger.Default.Send<string>(Send, "childwindow"); 这句话我的理解意思是,将信息发送到子窗体

Messenger.Default.Register<string>(this, "childwindow", msg => showvalue(msg));这句话是接收信息

public void showvalue(string str)
        {
            Value = str; 
        }

这面这个方法卸载childwindow页面中,当接受到消息后,改变viewViewModel中的Value属性值,页面中文本框的值也就发生了变化。消息发送成功 

Send 和Register方法中都有一个变量 object token,我的理解就是消息的名称,先注册这个消息,再向这个消息发送

信息,它就能接收到信息,并做处理

 

 

posted @ 2013-08-27 14:37  无风起浪、  阅读(268)  评论(0编辑  收藏  举报