gpt4 book ai didi

c# - MVVM 交替事件模式

转载 作者:行者123 更新时间:2023-12-03 11:00:39 29 4
gpt4 key购买 nike

我目前有一个看起来像这样的层次结构

MainWindowViewModel
TabViewModel
EditorViewModel
ReviewingServices
ConflictFinder

我遇到的问题是 TabViewModel希望收到冲突通知(来自 ReviewingServices)以及其他事情。我可以为我的所有依赖项创建公共(public) getter,并使用 DependencyA.DependencyB.DependencyC += SomeHandler; 订阅我想要的任何内容但这很困惑。我发现自己创造了太多我想计算的事件。从本质上讲,我创建了一个困惑的事件网络。我喜欢我为每个类(class)创建的职责分离,但是当每个类(class)都有 2-3 个事件时,维护起来相当困难。如果订阅者仅高于 1 级,我在创建和维护事件时没有问题。当说 MainWindowViewModel时,困惑就来了希望收到新评论的通知(从 ReviewingServies 发布。

在订阅者可能想要订阅深深嵌套在应用程序中的事件的情况下,执行这些类型的事件是否有更好的方法?

最佳答案

我不知道我是否真的遇到了你的麻烦,但我建议看看某种事件聚合器。尝试查看Caliburn one ,但自己实现一个并没有太大的不同。有了这个,您可以使用类型命名事件并从任何地方订阅它。

关于c# - MVVM 交替事件模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7029150/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com