EventPublication消息总线

序言

 

 

Prism

如何在Windows Forms应用程序中实现可组装式(Composite)的架构以及松耦合事件机制

 

 

 

EventHandler传递参数

复制代码
       [EventPublication("CshisNet://App/CsAction", PublicationScope.Global)]
        public event EventHandler<DoOperationEventArgs> DoOperation;

        public void OnDoOperation(DoOperationEventArgs e)
        {
            DoOperation?.Invoke(this, e);
        }
View Code
复制代码

 

复制代码
namespace Microsoft.Practices.CompositeUI.EventBroker
{
    public enum PublicationScope
    {
        Global = 0,
        WorkItem = 1,
        Descendants = 2
    }
}
复制代码

在controller中公布一个事件发布者,通过"topic://TestReport/DataRowAdded"来标识Publisher,默认的事件域为全局。也可以通过PublicationScope枚举来设置事件的作用域。事件作用域有以下三种:

PublicationScope.WorkItem :仅作用于引发当前发布的WorkItem实例

PublicationScope.Global:作用于引发当前发布的WorkItem所有实例

PublicationScope.Descendants:仅作用于引发当前发布的WorkItem实例,以及该WorkItem的任何级别的子WorkItem实例。

 

 

资料

https://www.cnblogs.com/ShaYeBlog/p/4609381.html

posted @   ~沐风  阅读(331)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!

喜欢请打赏

扫描二维码打赏

了解更多

点击右上角即可分享
微信分享提示