【问题标题】:MVVM light toolkit messenger problemsMVVM 轻量级工具包 Messenger 问题
【发布时间】:2010-11-15 09:21:07
【问题描述】:

我正在使用您的信使类在视图/控件和视图模型之间进行通信。 目前我在同一个视图上多次使用相同的用户控件。 问题是,当一个视图模型向用户控件发送回消息时,所有 我认为用户控件(相同类型的)得到更新。 如何预防?

仅供参考,我使用了您提供的令牌功能,但无法使其适用于我的特定情况。

【问题讨论】:

    标签: mvvm-light


    【解决方案1】:

    您是否尝试过更改您的用户控件,以便在构造时指定它是否应该注册该特定消息?我会以此为起点。

    使用 Messenger.Default 需要注意的另一件事——它不是线程安全的,所以如果你最终在用户控件以外的很多地方使用它(比如在工作线程中通知主线程发生的事件),那么你最好将它包装在另一个执行必要锁定的类中。

    【讨论】:

      【解决方案2】:

      如果您的消息继承自 MessageBase 类,您可以设置消息的目标, 或使用 Guid 作为 Messenger 令牌。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-05-08
        • 1970-01-01
        • 1970-01-01
        • 2011-11-11
        • 1970-01-01
        • 2018-10-27
        • 2021-04-24
        • 1970-01-01
        相关资源
        最近更新 更多