当前位置: 首页 > news >正文

wpf prism当中 发布订阅 IEventAggregator

先订阅后发布

private readonly IEventAggregator _eventAggregator;
public LoginViewModel(ILoginService iloginService, IEventAggregator eventAggregator)
{_iloginService = iloginService;_eventAggregator = eventAggregator;_eventAggregator.GetEvent<MessageEvent>().Subscribe(Reviced);UserName = "admin";PassWord = "123456";LoginCommand = new DelegateCommand<object>(DoLogin);}private void Reviced(string obj)
{throw new NotImplementedException();
}
 private readonly IEventAggregator _eventAggregator;public LeftMenuViewModel(IRegionManager regionManager, IUnityContainer unityContainer, IMenuService menuService, IEventAggregator eventAggregator){_eventAggregator = eventAggregator;_regionManager = regionManager;_menuService = menuService;origMenus = unityContainer.Resolve<GlobalValue>().UserInfo.Menus;var AllMenusList = menuService.GetAllMenus();var str = JsonHelper.SerializerToJsonString(AllMenusList);origMenus = JsonHelper.DeserializerJsonResult<List<SysMenu>>(str);eventAggregator.GetEvent<MessageEvent>().Publish("hello_ok");// 通过接口获取 菜单 数据   //origMenus = await menuBLL.GetMenus(0);// 通过接口获取 菜单 数据       // 需要初始化的进候进行菜单数据的获取填充// 通过Api接口//Task.Run(async () =>//{//    origMenus = unityContainer.Resolve<GlobalValue>().UserInfo.menus;//    origMenus = await menuBLL.GetMenus(0);// 通过接口获取 菜单 数据       //    unityContainer.Resolve<Dispatcher>().Invoke(() =>//    {//        this.FillMenus(Menus, 0);//    });//});FillMenus(Menus, 0);}
using Prism.Events;public class MessageEvent : PubSubEvent<string>
{}

相关文章:

wpf prism当中 发布订阅 IEventAggregator

先订阅后发布 private readonly IEventAggregator _eventAggregator; public LoginViewModel(ILoginService iloginService, IEventAggregator eventAggregator) {_iloginService iloginService;_eventAggregator eventAggregator;_eventAggregator.GetEvent<MessageEven…...

Angular中的getter函数

Angular 中的 getter 函数每次被调用时会返回一个新对象时&#xff0c;这些新对象并不使用同一个堆内存。详细解释一下&#xff1a; Getter 函数的作用是获取某个属性的值。在 Angular 中&#xff0c;getter 函数通常用于获取响应式数据&#xff08;例如 Observables 或 Signal…...

Python----函数的数据 拆包(元组和字典)

Python拆包&#xff1a; 就是把元组或字典中的数据单独的拆分出来&#xff0c;然后赋予给其他的变量。 拆包: 对于函数中的多个返回数据, 去掉 元组, 列表 或者字典 直接获取里面数据的过程。 元组的拆包过程 def func():# 经过一系列操作返回一个元组return 100, 200 …...

vim翻页快捷键

Vim翻页 整页 Ctrlf向下翻页&#xff0c;下一页&#xff0c;相当于Page DownCtrlb向上翻页&#xff0c;上一页&#xff0c;相当于Page Up 半页 Ctrld向下半页&#xff0c;下一半页&#xff0c;光标下移Ctrlu向上半页&#xff0c;上衣半页&#xff0c;光标上移 按行 Ctrle…...

死锁是什么?死锁是如何产生的?如何破除死锁?

1. 死锁是什么 多个线程同时被阻塞&#xff0c;它们中的一个或者全部都在等待某个资源被释放。由于线程被无限期地阻塞&#xff0c;因此程序不可能正常终止。 2. 死锁的三种典型情况 一个线程, 一把锁, 是不可重入锁, 该线程针对这个锁连续加锁两次, 就会出现死锁. 两个线程…...

给虚拟机配置静态id地址

1.令人头大的原因 当连接虚拟机的时候 地址不一会就改变&#xff0c;每次都要重新输入 2.配置虚拟机静态id地址 打开命令窗口执行 : vim /etc/sysconfig/network-scripts/ifcfg-ens33 按下面操作修改 查看自己子网掩码 3.重启网络 命令行输入 systemctl restart netwo…...

Mybatis-Plus 租户使用

Mybatis-Plus 租户使用 文章目录 Mybatis-Plus 租户使用一. 前言1.1 租户存在的意义1.2 租户框架 二. Mybatis-plus 租户2.1 租户处理器2.2 前置准备1. 依赖2. 表及数据准备3. 代码生成器 2.3 使用 三. 深入使用3.1 前言3.2 租户主体设值&#xff0c;取值3.3 部分表全量db操作3…...

vue el-table (固定列+滚动列)【横向滚动条】确定滚动条是在列头还是列尾

效果图&#xff1a; 代码实现&#xff1a; html&#xff1a; <script src"//unpkg.com/vue2/dist/vue.js"></script> <script src"//unpkg.com/element-ui2.15.14/lib/index.js"></script> <div id"app" style&quo…...

⑦【Redis GEO 】Redis常用数据类型:GEO [使用手册]

个人简介&#xff1a;Java领域新星创作者&#xff1b;阿里云技术博主、星级博主、专家博主&#xff1b;正在Java学习的路上摸爬滚打&#xff0c;记录学习的过程~ 个人主页&#xff1a;.29.的博客 学习社区&#xff1a;进去逛一逛~ Redis GEO ⑦Redis GEO 基本操作命令1.geoadd …...

LeetCode 2304. 网格中的最小路径代价:DP

【LetMeFly】2304.网格中的最小路径代价&#xff1a;DP 力扣题目链接&#xff1a;https://leetcode.cn/problems/minimum-path-cost-in-a-grid/ 给你一个下标从 0 开始的整数矩阵 grid &#xff0c;矩阵大小为 m x n &#xff0c;由从 0 到 m * n - 1 的不同整数组成。你可以…...

c 实用化的文本终端实时显示摄像头视频

因为采用yuv格式&#xff0c;帧率都很低。图像会拖影。把图像尺寸尽量缩小&#xff0c;能大大改善。现在最麻烦的是图像上有黑色的闪影&#xff0c;不知是为啥&#xff1f;如是framebuffer引起的就无解了。终于找到问题了&#xff0c;是在显示前加了一条用黑色清屏造成的&#…...

CSS中常用的伪类选择器

一 、伪类&#xff08;不存在的类&#xff0c;特殊的类&#xff09; -伪类用来描述一个元素的特殊状态 比如&#xff1a;第一个元素&#xff0c;被点击的元素&#xff0c;鼠标移入的元素 -特点&#xff1a;一般请情况下&#xff0c;使用&#xff1a;开头 1、 :first-child …...

【python学习】中级篇-数据库操作:SQLite

SQLite是一个轻量级的数据库引擎&#xff0c;它可以嵌入到各种应用程序中。以下是SQLite的基本用法&#xff1a; 创建数据库文件 import sqlite3# 连接到一个不存在的数据库文件&#xff0c;如果文件不存在&#xff0c;将会自动创建一个新的数据库文件 conn sqlite3.connect…...

汇编-PROTO声明过程

64位汇编 64 模式中&#xff0c;PROTO 伪指令指定程序的外部过程&#xff0c;示例如下&#xff1a; ExitProcess PROTO ;指定外部过程&#xff0c;不需要参数.code main PROCmov ebx, 0FFFFFFFFh mov ecx,0 ;结束程序call ExitProcess ;调用外部过程main ENDP END 32位…...

MYSQL事务操作

...

自动化测试——自动卸载软件

&#x1f4e2;专注于分享软件测试干货内容&#xff0c;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff01;&#x1f4e2;交流讨论&#xff1a;欢迎加入我们一起学习&#xff01;&#x1f4e2;资源分享&#xff1a;耗时200小时精选的「软件测试」资…...

Linux - 系统调用(syscall)

说明 基于riscv64 soc linux_5.10.4平台&#xff0c;通过新增一个系统调用深入了解下系统调用实现原理。 简介 Linux 软件运行环境分为用户空间和内核空间&#xff0c;默认情况下&#xff0c;用户进程无法访问内核&#xff0c;既不能访问内核所在的内存空间&#xff0c;也不…...

c语言-冒泡排序

冒泡排序原理&#xff1a; 冒泡排序是一种简单直观的排序算法&#xff0c;它重复地遍历待排序的元素序列&#xff0c;比较相邻的两个元素&#xff0c;如果它们的顺序不符合要求&#xff08;例如升序要求前面的元素小于后面的元素&#xff09;&#xff0c;则交换它们的位置。遍历…...

Mysql面经

Select语句的执行顺序 1、from 子句组装来自不同数据源的数据&#xff1b; 2、where 子句基于指定的条件对记录行进行筛选&#xff1b; 3、group by 子句将数据划分为多个分组&#xff1b; 4、使用聚集函数进行计算&#xff1b;AVG() SUM() MAX() MIN() COUNT() 5、使用 havin…...

1panel可视化Docker面板安装与使用

官网地址1Panel - 现代化、开源的 Linux 服务器运维管理面板 文章目录 目录 文章目录 前言 一、环境准备 二、使用步骤 1.安装命令 2.一些命令 3.使用 总结 前言 一、环境准备 虚拟机centos 已经安装好docker和 Docker Compose 或者都没安装 1panel会帮你自动安装 二、使用…...

别再手动算面积和距离了!用Shapely处理GeoJSON数据,效率提升10倍

地理空间数据分析实战&#xff1a;用Shapely解锁GeoJSON处理新姿势 还在用传统方法逐行解析GeoJSON数据&#xff1f;当面对城市地块分析、物流路径优化或区域规划时&#xff0c;手动计算几何属性不仅耗时费力&#xff0c;还容易引入人为误差。这里有一份来自某城市规划局的真实…...

山东大学软件学院2026项目实训个人博客(二)

项目名称&#xff1a;基于AI大模型的智能考研社区撰写日期&#xff1a;2026年4月18日本周我主要完成了项目基础环境的进一步搭建和Redis、RabbitMQ配置的完善&#xff0c;优化当前注册功能、登录功能、错题本CRUD功能&#xff0c;并进行Swagger测试。一、基础环境搭建从git仓获…...

听我分析:微创人流手术多少钱

药流小月子要坐多少天&#xff0c;药流小月子需要坐21天。药流小月子要坐多少天&#xff0c;药流后子宫、阴道都存在出血的情况&#xff0c;同时宫颈口处于张开&#xff0c;而且女性身体相对比较虚弱&#xff0c;这个时候就容易出现感染或者是出血量增加&#xff0c;会影响子宫…...

Python实现基于DD驱动的键盘R键连发功能

Python实现基于DD驱动的键盘R键连发功能 一、引言 1.1 项目背景 在游戏开发、自动化测试、辅助工具等领域,实现键盘按键的连发功能是一项常见需求。所谓“连发”,指的是当用户按住某个按键时,系统自动以一定的频率持续触发该按键的按下和释放事件,从而模拟极快的手动按键…...

如何高效使用BaiduPCS-Go:百度网盘命令行客户端的完整指南

如何高效使用BaiduPCS-Go&#xff1a;百度网盘命令行客户端的完整指南 【免费下载链接】BaiduPCS-Go iikira/BaiduPCS-Go原版基础上集成了分享链接/秒传链接转存功能 项目地址: https://gitcode.com/GitHub_Trending/ba/BaiduPCS-Go 还在为百度网盘的下载限速而烦恼吗&a…...

【踩坑实录】前端开发必看:一次由CSS缓存引发的线上事故与SEO反思

各位老铁&#xff0c;今天不聊虚的&#xff0c;来复盘一下我上周五晚上亲手制造的一场“线上事故”。作为一名前端开发&#xff0c;我一直以为接入CDN就是改个CNAME那么简单&#xff0c;直到我用实际行动证明了&#xff1a;不懂缓存策略&#xff0c;就是在给线上环境埋雷。一、…...

3个关键步骤实现FanControl中文界面完美配置

3个关键步骤实现FanControl中文界面完美配置 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/fa/FanControl.Releases…...

微信小程序反编译实战:深度揭秘Wedecode如何实现跨平台源代码还原

微信小程序反编译实战&#xff1a;深度揭秘Wedecode如何实现跨平台源代码还原 【免费下载链接】wedecode 全自动化&#xff0c;微信小程序 wxapkg 包 源代码还原工具, 线上代码安全审计&#xff0c;支持 Windows, Macos, Linux 项目地址: https://gitcode.com/gh_mirrors/we/…...

Yocto WIC与WKS文件:从分区布局到镜像定制的深度解析

1. WIC镜像与WKS文件基础认知 第一次接触Yocto项目的开发者&#xff0c;往往会对WIC和WKS这两个术语感到困惑。简单来说&#xff0c;WIC&#xff08;Wic Image Creator&#xff09;是Yocto项目中的一种镜像生成工具&#xff0c;而WKS&#xff08;Wic Kickstart&#xff09;文件…...

高通Camera驱动(4)-- 从configure_streams到Usecase的创建与匹配

1. configure_streams到Usecase的转换机制 当Android框架调用configure_streams接口后&#xff0c;高通Camera HAL会经历从流配置到具体场景(Usecase)创建的复杂决策过程。这个过程就像餐厅的点餐系统&#xff1a;顾客&#xff08;框架&#xff09;提交订单&#xff08;stream …...