Prism vs MvvmCross】的更多相关文章

Prism vs MvvmCross 在上一篇Xamarin开发环境及开发框架初探中,曾简单提到MvvmCross这个Xamarin下的开发框架.最近又评估了一些别的,发现老牌Mvvm框架Prism现在也支持Xamarin Forms了,可喜可贺!今天我们就来近距离尝试.比较一下,分别基于这两个框架写一个简单Android/iOS跨平台应用的感受. Prism Prism框架应该来源于微软的Microsoft patterns & practices的Prism Guidance.最初,应该被更…
在上一篇Xamarin开发环境及开发框架初探中,曾简单提到MvvmCross这个Xamarin下的开发框架.最近又评估了一些别的,发现老牌Mvvm框架Prism现在也支持Xamarin Forms了,可喜可贺!今天我们就来近距离尝试.比较一下,分别基于这两个框架写一个简单Android/iOS跨平台应用的感受. Prism Prism框架应该来源于微软的Microsoft patterns & practices的Prism Guidance.最初,应该被更多用于WPF开发.我对WPF了解太少,…
在前两篇老司机学Xamarin系列中,简单介绍了Xamarin开发环境的搭建以及Prism和MvvmCross这两个开发框架.不同的框架,往往不仅仅使用不同的架构风格,同时社区活跃度不同,各种功能模块和插件数量也会有巨大差别.架构风格的好坏,属于仁者见仁,但功能模块和插件的好坏多寡,却实实在在体现了社区的力量,是可以实打实拿出来练一练的.今天我们就来一起玩一玩MvvmCross提供的各种功能插件,看看哪些轮子可以拿来直接就用的. 备注:本文主要关注兼容Xamarin Forms xaml并且至少…
Xamarin开发环境及开发框架初探 Xamarin Forms开发框架二探 (Prism vs MvvmCross) Xamarin Forms开发框架之MvvmCross插件精选 Xamarin开发之我的第一个MvvmCross跨平台插件:SimpleAudioPlayer…
一想到明天是星期五,不对,是今天,心里就很激动,毕竟明天没课.激动之余,来写一篇博客,记录一下最近踏坑Xamarin开发校园助手APP的一些事儿.也许更像是一篇流水账. 在扯Xamarin之前,有必要先交代一下背景. 自从我上大学以来,一直在做校园助手,直到现在.完成一个优秀的校园助手,是我大学中为数不多的几个梦想之一.想要制作一款软件,就必须要选择一种合适的语言或平台,喜爱微软的我,选择了C# via .Net.在匆匆了解了C#的基础后,便开始尝试使用WPF做一些简单的东西.然后这个时候的境界…
以前做UWP开发都是使用MvvmLight,主要是简单易上手,同时也写了很多MvvmLight的开发系列文章: UWP开发必备以及常用知识点总结 UWP开发之Mvvmlight实践九:基于MVVM的项目架构分享 UWP开发之Mvvmlight实践八:为什么事件注销处理要写在OnNavigatingFrom中 UWP开发之Mvvmlight实践七:如何查找设备(Mobile模拟器.实体手机.PC)中应用的Log等文件 UWP开发之Mvvmlight实践六:MissingMetadataExcept…
祝各位2017年事业辉煌!开年第一篇博客,继续探索Xamarin.Forms… 为什么我做Xamarin开发的时候中意于Prism.Forms框架?本章为你揭晓. 实例代码地址:https://github.com/NewBLife/XamarinDemo/tree/master/TextToSpeechDemo DependencyService 1.简介 软件开发有一个原则叫[依赖倒置Dependence Inversion Principle ] A.高层次的模块不应该依赖于低层次的模块,…
说实在的研究Xamarin到现在,自己就没设计出一款好的UI,基本都在研究后台逻辑之类的!作为Xamarin爱好者,一些简单的页面布局知识还是必备的. 布局常见标签: StackLayout AbsoluteLayout RelativeLayout Grid ScrillViewer 主要拿个人最喜欢的StackLayout和Grid做说明. 1.StackLayout 通过它可以设置内部子元素的纵向或者横向布局,默认为纵向. <?xml version="1.0" encod…
Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单总结一下成功安装方法: 1,Vmware Player 12.1.1-3770994(Virtual Box 老版本Win10上启动不了,新版本5.1不再支持Mac OS) 2,执行命令关闭Hyper-v服务重启:bcdedit /set hypervisorlaunchtype off (不然无法…
Visual studio 2017 RC出来一段时间了,最近有时间就想安装试试,随带分享一下安装使用体验. 1,卸载visual studio 2015 虽然可以同时安装visual studio 2015和2017,考虑个人电脑性能加空间有限还是先卸载一个吧.要想完全卸载visual studio2015,得下载微软团队开源得一个简单工具才行,开源项目地址https://github.com/Microsoft/VisualStudioUninstaller,工具下载地址TotalUnins…
在[Xamarin+Prism小试牛刀:定制跨平台Outlook邮箱应用]中提到过以下错误,不知道大伙还记得不: 无法安装程序包"Microsoft.Identity.Client 1.0.304142221-alpha".你正在尝试将此程序包安装到目标为".NETPortable,Version=v4.5,Profile=Profile111"的项目中,但该程序包不包含任何与该框架兼容的程序集引用或内容文件.有关详细信息,请联系程序包作者. 不只是Microsof…
通过本文你将学会如下内容: 1,如何使用Xamarin开发跨平台(Windows,Android,iOS)应用. 2,如何使用微软的登录界面登入Microsoft账号. 3,如何使用Outlook邮箱API. 4,了解MVVM思想. 5,了解Prism框架. 原代码地址:https://github.com/NewBLife/MyOutlook Xamarin概述 Xamarin由开源项目Mono发展而来,是一套跨平台的移动开发工具,开发人员可以使用 C# 为iOS,Android, Mac以及…
在[Xamarin+Prism小试牛刀:定制跨平台Outlook邮箱应用]里面提到了Microsoft 身份认证,其实这也是一大块需要注意的地方,特作为后续补充这些知识点.上章是使用了Microsoft Authentication Library (MSAL)类库做认证,其实最后使用的是Azure AD V2.0 的OAuth2.0认证,而且支持所有用户身份认证: 个人用户(@live.com.@outlook.com.@hotmail.com) 企业(工作或学校)用户(@xxx.onmicr…
原文链接 http://ymblog.net/2016/07/24/wordpress-prism/ 继昨天花了一天一夜的时间匆匆写了主题Jiameil3.0之后,心中一直在想着优化加速,体验更好,插件更少,到目前为止,博客插件有多说,Crayon Syntax Highlighter代码高亮插件,super cache缓存插件,百度sitemap.在没有缓存的情况下,首页dom初识加载完成(不是document加载完成)的时间为5-6s左右,有缓存的情况下大概为2s左右,觉得慢了,查看源码,发…
一.前言 最近用一个十分轻量级的网页代码高亮Js库,应用到项目中发现了一个问题,对于静态的已经写好的代码,Prism的高亮插件是没有问题的,但是通过Ajax异步获取数据并修改DOM时发现,Prism高亮插件失效了,经过各种调试还是没办法解决,最后终于找到了解决办法.原文是英文版的,我做了简要的翻译,如有不妥之处还请指出.以下是原文地址: http://schier.co/blog/2013/01/07/how-to-re-run-prismjs-on-ajax-content.html 原标题:…
官方网站:http://prismjs.com/ Prism 是一个轻量级并且简单易用的 JavaScript 类库,minified 和 gzipped 压缩后只有 1.5kb 大小,即使添加语言定义代码,最大也不会超过 2kb,是目前最小的代码高亮 Javascript 类库. 不需要指定的class或者标签,你可以使用标准的标签.Prism支持web workers.所有的样式都是由CSS来处理生成,比较敏感的class名称包括,.comment,.string,.property等等.…
大家好,老司机学Xamarin系列又来啦!上一篇MvvmCross插件精选文末提到,Xamarin平台下,一直没找到一个可用的跨平台AudioPlayer插件.那就自力更生,让我们就自己来写一个吧! 源码和Nuget包 源码:https://github.com/teddymacn/Teddy-MvvmCross-Plugins Nuget包:https://www.nuget.org/packages/Teddy.MvvmCross.Plugin.SimpleAudioPlayer/ Mvvm…
  源码:Prism5_Tutorial   参考文档 Data Validation in WPF √ WPF 4.5 – ASYNCHRONOUS VALIDATION Reusable async validation for WPF with Prism 5 Validating our ViewModel Implementing a Data Access Layer with Entity Framework 6.1 – Part1 √ Implementing a Data Ac…
测试 Prism 对 C 语言的语法高亮 #include <stdio.h> #include "math.h" int main(void) { long int i,x,y,z; for (i=1;i<100000;i++) { x=sqrt(i+100); /*x为加上100后开方后的结果*/ y=sqrt(i+268); /*y为再加上168后开方后的结果*/ if(x*x==i+100&&y*y==i+268)/*如果一个数的平方根的平方等…
欢迎大家加入以下开源社区 Xamarin-Cn:https://github.com/Xamarin-Cn Mvvmcross-Cn:https://github.com/Mvvmcross-Cn  (另外微信订阅号 Xamarin 所有者@善友兄也给予了运营权限,后面将开始陆续运营起来,给大家推送相关的文章) 简介 相信做了开发有一定经验的人都知道IOC的存在,而Xamarin.Android中还没有IOC的存在.特别是在Xamarin.Android下,如果仅仅只是显示简单的数据,就需要通过…
一个基本的例子,没有viewmodel,没有使用Behaviors 大体步骤: 1.创建应用程序 2.使用"Shell"替换"MainWindow"(silverlight替换MainPage) 3.创建Bootstrapper(引导程序) 4.创建模块 5.加入视图 1.创建程序 使用vs 2010创建wpf或silverlight应用程序,添加以下引用 Microsoft.Practices.Prism Microsoft.Practices.Prism.Mef…
这篇博客将通过一个控制台程序简单了解下PRISM下Unity依赖注入容器的使用.我已经创建了一个例子,通过一个控制台程序进行加减乘除运算,项目当中将输入输出等都用接口封装后,结构如下: 当前代码可以点击这里下载. 运行效果如下: 下面将引入Unity类库,使用Unity来生成需要的对象实例. 先查看一下CalculateRelpLoop类, public class CalculateRelpLoop : ICalculateRelpLoop { ICalculateService _calcu…
这篇博客将介绍在WPF项目中引入PRISM框架进行开发的一些基础知识.目前最新的PRISM的版本是Prism 6.1.0,可以在Github上获取PRISM的源码.这个系列的博客将选择PRISM 4.1版本来讲解.可以从微软官网上下载到PRISM 4.1相关内容.将下载下来的文件解压开: 新建一个WPF解决方案如下: 解决方案中包含两个工程,GetStartedPrismWPF是一个WPF项目,GetStartedPrismWPF.MainModule是一个类库项目.这两个项目中都同时添加下面P…
上一篇简单介绍使用Prism中的NotificationObject,以及DelegateCommand.这一篇更是简单,仅仅描述下DelegateCommand<T>如何使用. ICommand接口一开始提供的就是带参数的方法,而我们使用时经常会遇到那个参数毫无用处的情况,Prism也就帮了偶们一把啦.当然,Prism并没有忘记我们有时还是要参数滴.   在定义上,我们使用ICommand定义,DelegateCommand和DelegateCommand<T>一样.在实例化时有…
使用WPF-MVVM开发时,自己实现通知接口.DelegateCommand相对来说还是用的较少,我们更多的是使用第三方的MVVM框架,其中微软自身团队提供的就有Prism框架,此框架功能较多,本人现学有限,暂时先介绍简单的使用. 注:此处使用Prism版本4.1 Prism首先方便我们的是帮助我们实现了INotifyPropertyChanged接口,其中RaisePropertyChanged不仅实现利用字符串通知,更实现了Lambda表达式,这样在代码重构上提供了一些方便... 其次,Pr…
protected override IModuleCatalog CreateModuleCatalog() { return Microsoft.Practices.Prism.Modularity.ModuleCatalog.CreateFromXaml(new Uri("ModuleCatalog.xaml", UriKind.Relative)); } .net的背景,就不说了.用这个代码作为开头吧.在Bootstrapper载入部件时需要用到. ModuleCatalog有…
prism 注册dll,出现以上错误 在系统环境变量,增加 VS100COMNTOOLS 设置路径C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Tools\ 我是x64 windows 8系统…
1.Prism Prism是由微软Patterns & Practices团队开发的针对WPF和Silverlight的MVVM框架. Prism的几个关键点: (1)启动器类UnityBootstrapper Silverlight程序入口处调用Bootstrapper.Run方法时,Prism会自动做一些初始化工作,包括读取模块信息表,创建模块类实例并初始化(还可以选择按需加载模式OnDemand),以及在CreatShell中指定整个程序的根视图. (2)继承IModule接口,进行模块初…
菜单管控模块EntityFW 菜单的加载采用MEF技术,程序实现思路: 1 .主菜单加载页面MainMenuView.xaml指向MenuRegion 2. 菜单Item点击及内容加载,采用订阅模式,即菜单item点击时发布消息,shell负责订阅并过滤加载子模块 MainMenuView.xaml <UserControl x:Class="EntityFW.Views.MainMenuView"       xmlns="http://schemas.microso…
Shell框架XECA shell.xaml主要起到是一个容器或壳的作用 <Window x:Class="XECA.Shell"      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"                xmlns:in…