我已经开始学习有关Windows 8商店应用程序。
我从Silverlight和WPF编程早些时候,人们适应了MVVM概念回忆,现在我不知道我是否应该使用什么我了解到当时与否。
我加入GalaSoft.MvvmLight参考,并创建了一个视图模型,并把它添加到我的XAML通过的建议:
DataContext="{Binding Source={StaticResource Locator}, Path=Welcome}"
它看起来像微软包含某种在LayoutAwarePage模型视图实现的:
protected override void LoadState(Object navigationParameter, Dictionary<String, Object> pageState)
{
// TODO: Assign a bindable collection of items to this.DefaultViewModel["Items"]
// DefaultViewModel["WelcomeTiles"] = WelcomeTiles;
}
可如果以下的datacontext已设置访问。
<DataContext="{Binding DefaultViewModel, RelativeSource={RelativeSource Self}}" />
所以,现在我不能确定,如果我还记得他们,用MVVMLight或只添加代码隐藏文件到DefaultViewModel数据我应该创建ModelViews。
什么是人民与既有经验? 我刚开始和我的下一个目标是添加处理程序时,一个项目被点击在GridView的 - 它上面的路径就会让一个简单的方法做到这一点?
不,MVVM永远不会死!
模型 - 视图 - 视图模型是一种设计模式,所以它不依赖于特定的框架或实现。 然而,这是最方便与支持数据绑定的UI框架使用的UI设计模式。
Windows 8的地铁应用包括XAML和约束力的框架这一点很像Silverlight和WPF。 出于这个原因,MVVM是管理你的代码很好的选择。
你在发现的代码LayoutAwarePage
中描述的这个博客帖子 。 这是企图使Windows 8 Metro应用开发变得更容易通过提供各种存根实现。 此页面包含一个DefaultViewModel
,这是一个观察的字典。
就个人而言,我不会用它!
都能跟得上MVVM是不是死了,还是蛮活着!
MVVM的可啉确定指标恢复还挺好。 事实上MVVM基本上是一个设计模式,并且不依赖于特定的框架。
使用MVVM不是教条......,但谁与XAML应用程序做了很多最[WPF,Silverlight中,WP 7和WinRT中...]会同意,忠实地MVVM有助于关注的清晰分离SOC的发展之间GUI和后端逻辑。
我个人用从洛朗的NuGet比尼翁的MVVMLight包结合WinRT中,虽然你可以自由用得放心使用任何其他MVVM包或选择你的感觉。
如果您需要进一步的样品裁判,我会邀请你吉尔Cleeren有“在Windows 8商店MVVM”看看在网络研讨会以下记录
http://www.silverlightshow.net/video/MVVM-in-Win8-Webinar.aspx
MVVM不是在Windows 8地铁的应用程序死了。
我们并没有在我们的应用程序使用MvvmLight,但你需要的基本组件,如绑定到视图模型的属性,使用个ICommand在视图模型和INotifyPropertyChanged的全部带有非常微小的变化(如果有的话)。
微软发表了很好的样本最近。 这并不是说MVVM明确,但它有你所需要的上手。 而约什-史密斯的文章当然还是有用的。
我建议http://stylemvvm.codeplex.com ,它从地上写了支持地铁项目(C#,C ++ / CX,HTML / JS)。 它包括一个完整的IOC,实施的ICommand及附加命令行为,服务瓷砖,徽章,烤面包和魅力。 它还包括一个漂亮的中保类是调度员知道。 另外,以帮助您开始了一些视觉工作室模板。
注:因为我写它,我可能会偏向:)