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

wordpress建站实例视频中企动力科技股份有限公司重庆分公司

wordpress建站实例视频,中企动力科技股份有限公司重庆分公司,长春网站建设网,为企业做网站要向谁索要资料文章目录 专栏和Gitee仓库前言消息订阅最简单的案例简单用例父组件订阅子组件回调 结果 消息订阅机制消息token是A还是B?传递消息的载体。双重token重复订阅问题 结论 专栏和Gitee仓库 WPF仿网易云 Gitee仓库 WPF仿网易云 CSDN博客专栏 前言 上一篇文章中#xff0c;我们简单… 文章目录 专栏和Gitee仓库前言消息订阅最简单的案例简单用例父组件订阅子组件回调 结果 消息订阅机制消息token是A还是B?传递消息的载体。双重token重复订阅问题 结论 专栏和Gitee仓库 WPF仿网易云 Gitee仓库 WPF仿网易云 CSDN博客专栏 前言 上一篇文章中我们简单讲解了一下父子通讯的逻辑。父子通讯是强绑定逻辑。这里我们将讲解消息订阅通讯的方式。消息订阅一般用于[页]和[页]之间通讯。 消息订阅 WPF消息订阅一共有两种方案一个是Prism的方案一个是CommunityToolkit.Mvvm的方案。 WPF Prims框架详解 WPF CommunityToolkit.Mvvm Messenger通讯 这里我们使用使用CommunityToolkit.Mvvm。使用Prism的也可以。 最简单的案例 简单用例 不了解CommunityToolkit.Mvvm的可以看这个 WPF CommunityToolkit.Mvvm Messenger通讯 这里用到了record不了解的可以看这个文章。当然也可以用class 博客园 C# – Record, Class, Struct 父组件订阅 namespace BlankApp1.Views {/// summary/// Interaction logic for MainWindow.xaml/// /summarypublic partial class MainWindow : Window{public record MainWindowMessage(string msg);public MainWindowViewModel ViewModel { get; set; }public MainWindow(){......其它代码InitializeComponent();//订阅MainWindowMessage的对象数据WeakReferenceMessenger.Default.RegisterMainWindowMessage(this,MessageRecieve);//也可以取消订阅但是一般不用//WeakReferenceMessenger.Default.UnregisterMainWindowMessage(this);}private void MessageRecieve(object recipient, MainWindowMessage message){Debug.WriteLine(接受到消息message.msg);}} }子组件回调 MiniWindow new RelayCommand(() {//其它代码逻辑不重要......//发送订阅消息WeakReferenceMessenger.Default.Send(new MainWindowMessage(缩小窗口)); });结果 消息订阅机制 我们模拟一个最简单的消息订阅场景。ViewA给ViewB推送消息。 消息token是A还是B? 我们推送订阅消息需要用到Key去推送订阅。那么用的是Key_A还是Key_B呢。 这个时候我们就要想到推送开发时候的流程了。我们一般开发都是先暴露再使用的代码开发流程。所以我们一般是先想ViewB能做什么先写好订阅再写推送逻辑的。而且一般是一次订阅多次推送。可以ViewA推送ViewB也可以ViewC推送ViewB,ViewD推送ViewB。 所以结论用到token是订阅者的token。是token_B。 传递消息的载体。 我们传递消息需要考虑到载体的问题。我们为了简化代码一般消息载体都是用string字符串作为载体。使用Json格式传递。通过序列化和反序列化来进行区别。 这里我推荐使用Newtonsoft。这里不展开说明 双重token CommunityToolkit.Mvvm8.1 消息通知(4) 【CommunityToolkit.Mvvm】Messenger 信使 如果是单一Token只能做到View的订阅。如果是双重Token我们可以做到View的某个函数的订阅。极大得增强了函数的复用性。这里我建议使用Enum枚举类型作为token /// summary /// 消息订阅载体 /// /summary /// param nameMsg/param public record MainWindowMessage(string Msg);//声明enum枚举类型 public enum MainWindowMessageToken { Test1, Test2 }//双重token订阅 WeakReferenceMessenger.Default.RegisterMainWindowMessage, string(this, MainWindowMessageToken.Test1.ToString(), MessageRecieve);//使用token双重推送 WeakReferenceMessenger.Default.Send(new MainWindowMessage(缩小窗口), MainWindowMessageToken.Test1.ToString());重复订阅问题 如果重复订阅会主动抛出异常 结论 我们消息流已经基本解决了。 强关联父子通讯组件化通讯弱关联消息订阅页与页窗口与窗口 我们最后的信息流控制就是IOC容器了IOC容器解决了之后我们已经将WPF完全解耦所有复杂的WPF问题都可以变成简单的单一问题。
http://www.hkea.cn/news/14312287/

相关文章:

  • 开发网站心得旗袍网站架构
  • 重庆网站策划中国建设银行app官方下载
  • 语文建设投稿网站公司营销策划方案
  • 燕郊的大型网站建设商丘做建设网站的公司
  • 哪个网站可以做曝光台酒店网络营销推广方案
  • 做基网站企业主页是什么意思
  • 在国内的服务器上建设国外网站全国企业工商信息查询系统
  • 莱芜网站建设价格做国外wordpress賺钱
  • 网站制作详细报价在线做动漫图片视频在线观看网站
  • 做网站找哪家好 07月扬州工程信息网
  • 网站充值怎么做分录网站加背景音乐
  • 哪些网站图片做海报好黄山旅游最佳时间
  • 如何在网上做自己的网站那个网站做的好
  • seo技术网网哈尔滨的网络优化能做么
  • wordpress电影资源网站西安建设工程信息网招投标业务平台
  • 免费网站建站 网页服务器做网站FTP必要性大吗
  • 好看的网站页面仿同程网 连锁酒店 网站模板
  • 司法局网站体制机制建设情况塘厦初级中学
  • 中小型网站有哪些网站建设时间进度
  • 栖霞区住房和建设局网站wordpress ent 主题
  • 现在的网站开发用什么技术保山便宜的网站建设
  • 网站创作wordpress开
  • 好网站推荐的网站网站建设设计 昆山
  • 把网站做成app服装公司网站多少钱
  • 吴川网站开发公司wordpress咋样
  • 做威尼斯网站代理算是违法吗办公用品企业网站建设方案
  • 做网站带源码软件-dw群晖 建wordpress 500
  • visual studio网站开发百度推广的费用
  • 做企业网站设计重庆最好的网站建设
  • 淮北哪有做淘宝网站wordpress的用户