wpf MvvmLight Messenger消息机制admin•2025-05-19 09:23:29•小程序•阅读22wpf MvvmLight Messenger消息机制2023年7月19日发(作者:)MVVM 消息机制 首先要添加MVVMLight类 如图,点击管理NuGet程序包 搜索MVVM会出现MVVM Light 点击安装 OK,然后就可以调用了 一个简单的例子, using System; using c; using ; using ; using ; using s; using ls; using ; using nts; using ; using ; using g; using tion; using ; using ing; using del; namespace WpfClient { /// /// 的交互逻辑 /// public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); er>(this, new Action>(mesg)); ntext = new ndowViewModel(); } public void mesg(TargetElement msg) { if ( == ID) (+"n"+ng()); } } } View HorizontalAlignment="Left" Margin="234,84,0,0" VerticalAlignment="Top" Width="75"/> ViewModel using System; using c; using ; using ; using ; using ing; using d; using ght; namespace del { public class MainWindowViewModel : ViewModelBase { public MainWindowViewModel() { TargetID = d(); } public static Guid TargetID; RelayCommand _btnClick; public RelayCommand BtnClick { get { if (_btnClick == null) { _btnClick = new RelayCommand(new Action(btnClick)); } return _btnClick; } set { _btnClick = value; } } private void btnClick(object obj) { >(new TargetElement(TargetID, "hello wprld")); } } } 这个是用来区分的 using System; using c; using ; using ; using ; namespace del { public class TargetElement { Guid _guidId; public Guid GuidId { get { return _guidId; } set { _guidId = value; } } T obj; public T Obj { get { return obj; } set { obj = value; } } public TargetElement(Guid id, T o) { this._guidId = id; = o; } } } 简单说下 消息机制Messenger er>(this, new Action>(mesg)); public void mesg(TargetElement msg) { if ( == ID) (+"n"+ng()); } >(new TargetElement(TargetID, "hello wprld")); 我们用到了这两句代码 个人理解,不喜勿喷 er就是注册一个mesg的方法,参数是TargetElement 当使用 传入一个参数类型为TargetElement的数据时会调用mesg的方法, 我在MainWindowViewModel 上新建了一个公共的,静态的Guid,就是为了区分TargetElement参数的问题 主要是用来指明调用的是MainWindowViewModel传入的参数 运行的结果是点击按钮时会弹出一个hello world的窗口 发布者:admin,转转请注明出处:http://www.yc00.com/xiaochengxu/1689722530a281131.htmlWPFadmin0相关推荐小程序在WPF中自定义控件在WPF中自定义控件admin2023-7-19180建站资讯WPF事件路由WPF事件路由admin2023-7-19160网站建设WPF之自定义窗体标题栏WPF之自定义窗体标题栏admin2023-7-19320小程序基于WPF的水槽控制及数据采集系统设计与实现基于WPF的水槽控制及数据采集系统设计与实现admin2023-7-19170网站建设WPF编程:使用XamlReader类动态加载XAML文件WPF编程:使用XamlReader类动态加载XAML文件admin2023-7-19320网站建设WPF的String和stringWPF的String和stringadmin2023-7-19250网站建设wpf远程共享文件夹设置wpf远程共享文件夹设置admin2023-7-19230建站资讯WPF查看pdf文件WPF查看pdf文件admin2023-7-19220建站资讯WPF反编译后错误处理WPF反编译后错误处理admin2023-7-19380建站资讯WPF项目中遇到的问题WPF项目中遇到的问题admin2023-7-19370网站建设ArcGIS+WPF开发环境搭建ArcGIS+WPF开发环境搭建admin2023-7-19240小程序WPF中DataGrid的使用WPF中DataGrid的使用admin2023-7-19600建站资讯WPF中的触发器(Trigger)WPF中的触发器(Trigger)admin2023-7-19220小程序使用Newtonsoft.Json序列化WPF的DependencyObject使用Newtonsoft.Json序列化WPF的DependencyObjectadmin2023-7-19210小程序WPF实现文字粒子闪烁动画效果WPF实现文字粒子闪烁动画效果admin2023-7-19200建站资讯WPF样式及资源字典的使用WPF样式及资源字典的使用admin2023-7-19330网站建设C# 分别在windows form和wpf中实现windows 7 玻璃(areo)效果在windows7中大量使用了玻璃效果(也就是说Areo效果)感觉非常漂亮。平时自己做一些小东西也很想要这个效果,于是琢磨了一下。 1、在windows form程序中实现玻璃效果 这里要用到微软提供的 Windows 7 API Codeadmin5月前200网站建设Windows中UWP、WPF和Windows窗体的区别Windows 中开发应用(或者可以说客户端)有三种方法: UWP(Universal Windows Platform)、WPFadmin5月前640网站建设wpf打开默认浏览器网址private void button1_Click(object sender, EventArgs e) { 调用系统默认的浏览器 System.Diagnostics.Process.Start(“explorer.exe”, “admin4月前60questionswpf , how to dynamic change Paragraph's background - Stack OverflowI can set Paragraph's background property when creating a paragraph instance and add it to richTexadmin4月前50 发表回复提交评论列表(0条)暂无评论
评论列表(0条)