
★★★WPF+Prism框架★★★
WPF+Prism框架
优惠券已抵扣
余额抵扣
还需支付
¥19.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
我爱AI
本人毕业于桂林电子科技大学,本科阶段主攻硬件,比如单片机类。硕士阶段主攻通信工程,比如用MATLAB跑无线接入网系统等等。毕业后,在医疗公司做软件工程师,主攻WPF/WinForm/数据库/底层驱动等等。
因此,在硬件PCB等等、在软件MATLAB/WPF等等有需求的朋友,可以一起交流学习。现在转AI+Web,做通信类网管
展开
-
Prism 入门(一)提供了Prism 中文资料以及案例
一、简介MVVM的参考网页本博客,主要参看下面几篇博客,实现了MVVM的几个实例,在普通的开发中,这个实例够我们用了。1、https://blog.youkuaiyun.com/yl2isoft/article/details/208517672、https://www.cnblogs.com/zhili/p/MVVMDemo.html3、https://www.cnblogs.com/z...原创 2019-01-14 16:15:21 · 4318 阅读 · 0 评论 -
Prism 入门(二)提供了Prism官网的资料(全是英文)
一、简介 对于大多数人来说,使用轻量级的MVVMLight就够用了。但是MVVMLight是个人创建的,官网的资料并没有那么齐备。Prism则是微软团队开发的,功能比较齐备,官网上的资料也比较多。我们学习东西,要学就学最好的。本博客主要介绍微软的的Prism。 1、Prism的基本介绍https://archive.codeplex.com/?p=compositewpf...原创 2019-01-14 14:10:25 · 4803 阅读 · 1 评论 -
Prism Demo系列(一) Prism架构剖析:01-BootstrapperShell
一、简介我工程上的Prism架构 本文主要分析Prism的架构,这个架构的每个功能都分成了多个模块,比如Modules模块/Views模块。在工程中,每个模块,往往建立一个文件存放,一目了然。工程上要用这个架构,所以我要分析它:之前写的典型Prism例子 在此之前,我之前在下面的博客中,主要用到了View/ViewModel/Model,三个文件夹,并且...原创 2019-01-16 11:20:40 · 2290 阅读 · 0 评论 -
Prism Demo系列(二) Prism架构剖析:02-Regions
一、简介Regions的作用(加粗,代表例子中,实现了相关的作用):1、Regions是定义在应用UI中的逻辑占位符(在Shell或者在其它的视图中),视图会在其中显示。简单的说,就是一个容器(区域适配器),用来装载Views。功能和Panel控件差不多。视图可以以编程的方式或者自动被显示在region中。2、Regions允许在不需要改变程序逻辑的情况下更新应用UI的布局。3、很...原创 2019-01-16 19:52:07 · 1204 阅读 · 6 评论 -
Prism Demo系列(三) Prism架构剖析:03-CustomRegions
一、简介Regions的作用(加粗,表示本例和上篇博客例子中,实现了相关的作用):1、Regions是定义在应用UI中的逻辑占位符(在Shell或者在其它的视图中),视图会在其中显示。简单的说,就是一个容器(区域适配器),用来装载Views。功能和Panel控件差不多。视图可以以编程的方式或者自动被显示在region中。2、Regions允许在不需要改变程序逻辑的情况下更新应用UI的布...原创 2019-01-17 11:22:39 · 894 阅读 · 0 评论 -
Prism Demo系列(四) Prism架构剖析:04-ViewDiscovery
一、简介什么是ViewDiscovery?就是实现View与Region关联的方法。比如04-ViewDiscovery工程中,常用的几种关联方法: //方法1 ( ViewDiscovery) this.regionManager.RegisterViewWithRegion("RegionName", typeof(ViewClass)); ...原创 2019-01-17 14:32:48 · 768 阅读 · 0 评论 -
Prism Demo系列(五) Prism架构剖析:05-ViewInjection
一、简介什么是ViewInjection?就是实现View与Region关联的方法。常见的关联方法: //方法1 ( ViewDiscovery) this.regionManager.RegisterViewWithRegion("RegionName", typeof(ViewClass)); //方法2 (ViewInjec...原创 2019-01-17 15:04:33 · 647 阅读 · 0 评论 -
Prism Demo系列(六) Prism架构剖析:06-ViewActivationDeactivation
一、简介这里讨论一个region装载多个View,但同时只能显示一个View。二、举例工程截图:工程文件:1、Bootstrapper.cs、App.xaml、App.xaml.cs(和系列的一个相同)2、MainWindow.xaml:<Window x:Class="ActivationDeactivation.Views.MainWindow" ...原创 2019-01-17 15:47:22 · 635 阅读 · 0 评论 -
Prism Demo系列(七) Prism架构剖析:07-Modules - AppConfig
一、简介 在 Prism 中,将外部模块加载到主程序有以下几种方式:Code、XAML、配置文件、指定模块目录。本博客,介绍项目Modules通过AppConfig配置方式加载ModuleA或ModuleB。其中ModuleA和ModuleB都是类库。所以你要注意:二、举例2.1、Modules工程2.1.1、App.config:<?xm...原创 2019-01-18 08:45:56 · 922 阅读 · 0 评论 -
Prism Demo系列(七) Prism架构剖析:07-Modules - Code
一、简介Modules工程在Bootstrapper.cs里面,添加对MuduleA的引用。这里很简单,不仔细罗列了。但是要注意对MuduleA的引用。工程目录 二、举例Prism Demo系列(七) Prism架构剖析:07-Modules - AppConfig与上篇博客不同的是,本博客没有设置任何配置文件,只有Bootstrapper.cs是稍微改变的:us...原创 2019-01-18 10:17:37 · 559 阅读 · 0 评论 -
Prism Demo系列(七) Prism架构剖析:07-Modules - Directory
一、简介本博客实现加载制定目录的ModuleA.DLL。工程目录:加载DLL:本博客和上两篇博客的功能和文件几乎都一样,只是在Bootstrapper.cs稍微有点不同(其他文件我不罗列了)。Bootstrapper.cs:using Microsoft.Practices.Unity;using Prism.Unity;using Modules.Views...原创 2019-01-18 10:59:15 · 621 阅读 · 0 评论 -
Prism Demo系列(七) Prism架构剖析:07-Modules - LoadManual
不多说,其他文件和上篇博客相同。唯一不同的地方是Bootstrapper.cs提供了另一种方法加载模块。Bootstrapper.cs:using Microsoft.Practices.Unity;using Prism.Unity;using Modules.Views;using System.Windows;using Prism.Modularity;using ...原创 2019-01-18 11:14:26 · 439 阅读 · 0 评论 -
Prism Demo系列(八) Prism架构剖析:08-ViewModelLocator
一、简介什么是ViewModel?自己百度下MVVM吧。什么是ViewModelLocator?意思是ViewModel系统、或ViewModel定位,说白了,就是介绍ViewModel。工程目录:你可以参考https://www.cnblogs.com/bjxingch/articles/9562542.html二、举例1、App.xaml、App.xaml.cs、B...原创 2019-01-18 11:29:42 · 1537 阅读 · 0 评论 -
Prism Demo系列(九) Prism架构剖析:09-ChangeConvention
另一种方法实现了上篇博客的功能。原创 2019-01-18 11:49:09 · 480 阅读 · 0 评论 -
Prism Demo系列(十) Prism架构剖析:10-CustomRegistrations
功能与前两篇博客相同,不同的是Bootstrapper.cs稍微改变:using Microsoft.Practices.Unity;using Prism.Unity;using ViewModelLocator.Views;using System.Windows;using Prism.Mvvm;using ViewModelLocator.ViewModels;name...原创 2019-01-18 12:00:47 · 585 阅读 · 0 评论 -
Prism Demo系列(十一) Prism架构剖析:11-UsingDelegateCommands
一、简介委托+命令,是Prism的核心之一。工程目录:二、举例1、App.xaml、App.xaml.cs、Bootstrapper.cs、MainWindow.xaml(与之前的博客相同,不罗列了)2、MainWindow.xaml:<Window x:Class="UsingDelegateCommands.Views.MainWindow" ...原创 2019-01-18 15:04:16 · 658 阅读 · 0 评论 -
Prism Demo系列(十二) Prism架构剖析:12-UsingCompositeCommands
一、简介上篇博客,介绍了普通的命令绑定。这里介绍组合命令的绑定。当然项目中,不建议这种绑定,太复杂了,我整理了好久,没完全弄懂,以后还要回过头来看看CompositeCommand命令是什么鬼东西。工程目录:然后我们温习下,Prism的架构图: 参考:https://www.cnblogs.com/zhouyinhui/archive/2008/07/15/124351...原创 2019-01-18 15:49:35 · 534 阅读 · 0 评论 -
Prism Demo系列(十三) Prism架构剖析:13-IActiveAwareCommands
和上篇博客效果一样,但是 TabViewModel.cs稍微改变,采用了IActiveAware接口来更新UI:using Prism;using Prism.Commands;using Prism.Mvvm;using System;using UsingCompositeCommands.Core;namespace ModuleA.ViewModels{ pub...原创 2019-01-18 20:29:32 · 774 阅读 · 0 评论 -
Prism Demo系列(十四) Prism架构剖析:14-UsingEventAggregator
一、简介主项目UsingEventAggregator加载次项目ModuleA和ModuleB。然后让ModuleA的View给ModuleB的View发送消息。怎么发呢?请看我的流程图。目录:二、举例1、UsingEventAggregator项目1.1、App.xaml、App.xaml.cs、MainWindow.xaml.cs(省略,与之前的相同)1.2、B...原创 2019-01-19 08:33:16 · 803 阅读 · 0 评论 -
Prism Demo系列(十五) Prism架构剖析:15-FilteringEvents
于上篇博客项目结构、内容几乎一样,唯一不同的地方是ModuleB项目的 MessageListViewModel.cs稍微改动了一下:using Prism.Events;using Prism.Mvvm;using System.Collections.ObjectModel;using UsingEventAggregator.Core;namespace ModuleB.Vi...原创 2019-01-19 09:33:08 · 1008 阅读 · 0 评论 -
Prism Demo系列(十六) Prism架构剖析:16-RegionContext
一、简介这篇博客介绍region,但是region,在之前的博客中,我们一直在用。此外,流程图,已经把架构搞明白了,请慢慢看我的流程图啊。目录:二、举例 1、RegionContext工程1.1、App.xaml、App.xaml.cs、MainWindow.xaml.cs(省略,与之前系列的相同)。1.2、Bootstrapper.cs:using Micros...原创 2019-01-19 10:34:06 · 1320 阅读 · 0 评论 -
Prism Demo系列(十七) Prism架构剖析:17-BasicRegionNavigation
一、简介Region结合Navigation导航,类似https://blog.youkuaiyun.com/xpj8888/article/details/83022627的功能。关于导航,请参考:https://www.cnblogs.com/sunrfun/archive/2013/03/24/2979702.htmlIsNavigationTarget方法:当前的视图模型是否可以处理请...原创 2019-01-19 11:41:43 · 690 阅读 · 0 评论 -
Prism Demo系列(十八) Prism架构剖析:18-NavigationCallback
与上篇博客的内容、结构几乎一致,只有MainWindowViewModel.cs是稍微改变的:using System;using Prism.Commands;using Prism.Mvvm;using Prism.Regions;namespace BasicRegionNavigation.ViewModels{ public class MainWindowVi...原创 2019-01-19 11:52:53 · 509 阅读 · 0 评论 -
Prism Demo系列(十九) Prism架构剖析:19-NavigationParticipation
注:1、2019年1月:用例程写了初稿。2、2019年3月:我在ModuleA的ViewA上,用通知Notification增加了弹出窗口Finger.xaml,方便大家的理解。一、简介结构、内容和上篇博客几乎一致。只有少部分的内容是改动的。二、举例(2019年1月)把改动后的内容,放在这里。1、ModuleA1.1、ModuleAModule.cs、View...原创 2019-01-19 16:05:23 · 567 阅读 · 0 评论 -
Prism Demo系列(二十) Prism架构剖析:20-NavigateToExistingViews
内容、结构和上篇相同,只有部分ViewAViewModel.cs或ViewBViewModel.cs是不同的:ViewBViewModel.cs:using Prism.Mvvm;using Prism.Regions;namespace ModuleA.ViewModels{ public class ViewBViewModel : BindableBase, INa...原创 2019-01-19 17:16:22 · 511 阅读 · 0 评论 -
Prism Demo系列(二十一) Prism架构剖析:21-PassingParameters
一、简介本篇博客,是在下面这2篇博客的基础上做的,也就是结合了两个的功能来组合:Prism Demo系列(十六) Prism架构剖析:16-RegionContextPrism Demo系列(二十) Prism架构剖析:20-NavigateToExistingViews(主要讲导航)关于导航,请参考:https://www.cnblogs.com/sunrfun/arch...原创 2019-01-19 17:29:39 · 591 阅读 · 0 评论 -
Prism Demo系列(二十二) Prism架构剖析:22-ConfirmCancelNavigation
一、简介本片博客将介绍确认导航,点击确认后,才显示ViewB: 二、举例内容、结构基本与 Prism Demo系列(十六) Prism架构剖析:16-RegionContext相同,只有ViewAViewModel.cs是稍微改变:using Prism.Mvvm;using Prism.Regions;using System;using System.Win...原创 2019-01-20 20:34:26 · 438 阅读 · 0 评论 -
Prism Demo系列(二十三) Prism架构剖析:23-RegionMemberLifetime
一、简介本篇博客,还是介绍导航,但是其效果图如下(自己看官网SourceCode)。一直点击B:原创 2019-01-20 20:46:16 · 509 阅读 · 0 评论 -
Prism Demo系列(二十四) Prism架构剖析:24-NavigationJournal
一、简介这个比较有意思了,点击 用户列表(或点击GoForward)——跳转到另个页面——点击GoBack回到原来的页面。用到都是前面系列的知识,相当于一个比较汇总的案例吧。工程目录:二、举例我们与 Prism Demo系列(二十一) Prism架构剖析:21-PassingParameters对比分析,省略不必要的代码。1、NavigationJourna...原创 2019-01-20 21:02:37 · 718 阅读 · 0 评论 -
Prism Demo系列(二十五) Prism架构剖析:25-NotificationRequest, 分析弹出窗口和Raise(T context, Action<T> callback)
一、简介到了这篇博客,导航的内容章节已经结束讨论。本文学习Notification,即实现事件通知,比如弹出一个窗口。工程目录(就几个文件而已):参考:https://www.bbsmax.com/A/A2dmReOBze/https://blog.youkuaiyun.com/wangshubo1989/article/details/47998611二、举例Bootst...原创 2019-01-20 21:43:01 · 802 阅读 · 0 评论 -
Prism Demo系列(二十六) Prism架构剖析:26-ConfirmationRequest
一、简介这篇博客用Commad实现Notification,功能上多了确认通知这个按钮:点击确认:点击确认后:点击取消后:二、举例只有两个地方与上篇博客不同,我们把不同的 地方罗列出来。MainWindow.xaml:<Window x:Class="UsingPopupWindowAction.Views.MainWindow" ...原创 2019-01-20 21:57:49 · 424 阅读 · 0 评论 -
Prism Demo系列(二十七) Prism架构剖析:27-CustomContent
一、简介本文利用Command、InteractionRequest、INotification的方式,实现点击按钮,触发CustomPopupRequest,弹出CustomPopupView.xaml的功能。1、点击:2、弹出CustomPopupView.xaml(对比前面的两篇博客,这里就是本文的重点,也是不同的地方)3、点击Accept后: 二、举例...原创 2019-01-21 08:36:42 · 525 阅读 · 0 评论 -
Prism Demo系列(二十八) Prism架构剖析:28-CustomRequest
一、简介细看之后,你可以发现28-CustomRequest工程,功能与前一篇差了不多。点击后:选中后:没了,东西就这么多,工程文件我也不罗列了。在这里,我还是要强调一下,Notifications文件夹应该放什么东西:本篇博客中,28-CustomRequest的Notifications文件夹放了两个文件,其中一个文件CustomNotification....原创 2019-01-21 09:46:42 · 390 阅读 · 2 评论 -
Prism Demo系列(二十九) Prism架构剖析:29-InvokeCommandAction
本工程(不再罗列)其实非常简单,主要介绍调用了Command。其实关于Command,在之前的系列中,已经提到过并一直在用。工程目录:废话少说,我们直接看效果:没了,就这么一点东西。到此,关于Prism Demo系列的分析,已经完全结束了。到此,关于Prism Demo系列的分析,已经完全结束了。到此,关于Prism Demo系列的分析,已经完全结束了。...原创 2019-01-21 10:24:40 · 892 阅读 · 0 评论 -
Prism Demo系列(三十) Prism架构剖析:大总结(未完,待续)
简介 到了今天,我们罗列了几十个Prism Demo系列的例子,相信大家对每个模块的功能,已经有了充分的了解。那么今天,我会给出一份关于Prism详细的内容,来分析其流程图以及流程图每个模块的功能。当然,如果你不想看本博客的长篇大论,你可以参考Prism Demo系列的几十个例子,你就会明白Prism的大体架构。 未完,待续(花了3天时间调研Prism架构,最近忙着...原创 2019-01-21 11:05:16 · 1704 阅读 · 0 评论 -
Prism 应用系列(一) 委托命令DelegateCommand
我们把常用的委托命令分析分析namespace Prism.Commands{ // // 摘要: // An ICommand whose delegates can be attached for Prism.Commands.DelegateCommand`1.Execute(`0) // and Prism.Commands.Dele...原创 2019-01-23 09:15:34 · 2689 阅读 · 0 评论 -
Prism 应用系列(二) MVVM架构中,MainWindow.xaml文件与MainWindowViewModel.cs的绑定使用
因为在MainWindow.xaml需要绑定MainWindowViewModel.cs的属性,两个文件的管理,是通过下面的代码实现的。xmlns:prism="http://prismlibrary.com/"prism:ViewModelLocator.AutoWireViewModel="True" MainWindow.xaml:<Window x:Class="U...原创 2019-02-13 11:33:44 · 1451 阅读 · 0 评论 -
Prism 应用系列(三) MVVM架构,采用命令Command和命令参数CommandParameter传递ListView的SelectedItems给一个对象object,再将对象拿出来转成集合
一、简介参考:http://www.itkeyword.com/doc/2377036552008887x822我的目标,如我的标题所示。我们需要注意:ListView.SelectedItem——表示列表的1行。ListView.SelectedItems——表示列表的多行。方法1:绑定SelectedItems <prism:InvokeCommandAct...原创 2019-02-15 11:44:50 · 1773 阅读 · 1 评论 -
Prism 应用系列(四) ListView添加多个事件:Loaded、MouseDoubleClick、SelectionChanged事件以及默认的Click点击事件。
注意到没有,我们没有设置Click事件,因为它是默认的,不用我们另起代码写,比如下面的代码就会自己启用点击事件:<ImageButton Content="{DynamicResource History.PrintSetting.Operate.Content}" Width="100" Height="30" Canvas.Right="200" Canvas.Left="246...原创 2019-02-16 12:00:30 · 1250 阅读 · 0 评论 -
Prism 应用系列(五) prism 架构中,如何将对象从一个ViewModel(或View)传递给另一个ViewModel(View)
一、Notification通知(方法1)这种方法适合应用在弹出窗口,然后在通知中放置Content,然后在public INotification Notification将该Content拿出来保存。比如下面,我要将Content保存集合pipList中。1、先放置数据集合SelectedMorePersons: SenduNotification...原创 2019-02-21 16:35:05 · 4268 阅读 · 0 评论