需求:
当我们更改菜单管理页面 进行增删改查完成操作时需要主页面的菜单列表进行更新
1、重启应用(在增删改查操作完成后给用户提示:重启生效!)
2、使用代码进行更新
2.1 子页面初始化引入IEventAggregator
IEventAggregator:事件聚合器,可以实现应用程序中松散耦合组件之间的通信。允许发布者和订阅者通过事件进行通信,并且彼此之间仍然没有直接引用。
2.2 创建一个类(事件集合类) RefreshMenuEvent 继承PubSubEvent
using Prism.Events;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ImSQL.SmartParking.Base
{
public class RefreshMenuEvent : PubSubEvent
{
}
}
2.3 在需要通知的地方添加如下:用于发送消息
//通知主页面进行刷新操作
_eventAggregator.GetEvent<RefreshMenuEvent>().Publish();
2.4 主页面初始化引入IEventAggregator
2.5 在主页面 需要进行刷新操作的地方添加如下:用于接收消息
//获取子页面通知
_eventAggregator.GetEvent<RefreshMenuEvent>().Subscribe(() =>
{
//刷新菜单
LodMenus();
});
2.6 运行
删除操作
删除完成自动刷新-主页面菜单栏跟着更新