题
一个人能解释的调解模式如何与多个实例的工作。
我的视图中的代码:
public MyView() {
Mediator.Register("CloseWindow",()=>Close());
}
和在视图模型:
public SomeMethod() {
Mediator.Notify("CloseWindow");
}
此工作发现,只要有视图的一个实例 - 视图模型对
我如何与多个实例解决呢?
解决方案
我使用的替代解决方案。 MyView的实现其中包含关闭方法的接口IMyView。所述MyViewModel对象相关联的视图,因此它可以调用通过接口Close方法。
如果您有兴趣在一个具体的例子,那么你可能看看:
其他提示
我不知道你的调解模式的具体实现是如何工作的,但在我的,你可以不只是字符串发送更多的信息。
例如:
public MyView() {
Mediator.Register<CloseWindowMessage>(message =>
{
if (message.ViewModel == DataContext) Close();
});
}
和在视图模型:
public SomeMethod() {
Mediator.Notify(new CloseWindowMessage(this));
}
在该示例中,视图模型通过本身作为参数的图。那么该视图可以检查正被从它的视图模型发送的消息。
不隶属于 StackOverflow