摘要: ## EventToCommand在WPF中,并不是所有控件都有Command,例如TextBox,那么当文本改变,我们需要处理一些逻辑,这些逻辑在ViewModel中,没有Command如何绑定呢?这个时候我们就用到EventToCommand,事件转命令,可以将一些事件例如TextChanged... 阅读全文
posted @ 2015-08-22 13:20 UncleNull 阅读(4465) 评论(1) 推荐(0) 编辑
摘要: ## DispatcherHelper通常,WPF 应用程序从两个线程开始:一个用于处理呈现,一个用于管理 UI。呈现线程有效地隐藏在后台运行,而 UI 线程则接收输入、处理事件、绘制屏幕以及运行应用程序代码。所以我们的大多数操作都会在UI线程中执行,同时它也处理绘制屏幕,如果我们的一个操作相当耗时... 阅读全文
posted @ 2015-08-22 13:20 UncleNull 阅读(4786) 评论(0) 推荐(4) 编辑
摘要: ## ViewModelLocator这里先鼓舞下士气,ViewModelLocator很简单,甚至可以去掉,它不是Mvvm必须的。在初学Mvvm时,一般都是使用NuGet安装MvvmLight框架,总是会带上那么一个ViewModelLocator,并且还加入到了全局资源中,到底是干吗的? ... 阅读全文
posted @ 2015-08-22 13:19 UncleNull 阅读(5179) 评论(0) 推荐(4) 编辑
摘要: ## MessengerMvvm提倡View和ViewModel的分离,View只负责数据的显示,业务逻辑都尽可能放到ViewModel中,保持View.xaml.cs中的简洁(没有任何代码,除了构造函数),但是某些场景下也不必一定要保持View.xaml.cs中的简洁,例如动画。我们想要让界面酷炫... 阅读全文
posted @ 2015-08-22 13:19 UncleNull 阅读(2278) 评论(1) 推荐(2) 编辑
摘要: ### Mvvm简介当我们在开发WPF,SilverLight,WP程序时,会使用Mvvm这一架构模式。它是一个很笼统的架构模式概念。在.Net下,我所知道的Mvvm框架有* [MvvmLight](http://www.mvvmlight.net/)* [Caliiburn.Micro](http... 阅读全文
posted @ 2015-08-22 13:19 UncleNull 阅读(3497) 评论(1) 推荐(4) 编辑
摘要: ## ViewModelBase && ObservableObject在Mvvm中,ViewModel和Model都需要具有通知界面更新数据的能力,这都要借助于WPF中的*INotifyPropertyChanged* 接口,每一个ViewModel和Model都要去实现接口就太麻烦,于是作为Mv... 阅读全文
posted @ 2015-08-22 13:18 UncleNull 阅读(5787) 评论(0) 推荐(2) 编辑
摘要: ## RelayCommandMvvm最大的特点就是分离了View和ViewModel,将数据的显示和业务逻辑分开。使用WPF的Binding,我们不仅能够将数据从ViewModel绑定到View,同时也可以将行为绑定到View。例如,在主界面上点击一个按钮,这个按钮实际完成的操作是ViewMode... 阅读全文
posted @ 2015-08-22 13:18 UncleNull 阅读(5735) 评论(0) 推荐(2) 编辑
摘要: ![MvvmLightToolKit](http://www.galasoft.ch/layout/mvvm/MVVM_BlackText_190x147.png)### [MvvmLightToolKit](http://www.mvvmlight.net/)MvvmLightToolKit的[源... 阅读全文
posted @ 2015-08-22 13:17 UncleNull 阅读(8110) 评论(1) 推荐(4) 编辑