繁体   English   中英

从头开始为Windows 8.1创建MvvmCross Store应用程序的过程?

[英]Procedure for creating an MvvmCross Store application for Windows 8.1 from scratch?

使用Visual Studio 2013,我将基于MvvmCross为Windows 8.1创建新的Windows应用商店应用程序。

我首先根据Core.txt待办事项文件中的说明创建带有视图模型的PCL .Core类库。

接下来,我创建我的.Store应用程序,现在按照Windows Store UI.txt待办事项文件中的说明进行操作。 我确实想使用导航框架,所以我用Basic Page FirstView.xaml替换FirstView.xaml页面。

根据说明, LayoutAwarePage类应继承MvxStorePage但由于LayoutAwarePage.cs不再包含在VS2013 / 8.1 Store项目中,我改为将我的FirstView.xaml页面更改为MvxStorePage类型:

<views:MvxStorePage x:Name="pageRoot" x:Class="App.Store.Views.FirstView"
 ... >
...
</views:MvxStorePage>

通过此更改,我启动应用程序时会显示FirstView ,但视图模型绑定不起作用! 在Windows应用商店8.1应用中设置MvvmCross视图模型绑定的正确步骤是什么?

似乎我忘记了Windows Store UI.txt待办事项文件中的一部分说明:

添加一个views文件夹和一个视图 - 基于BasicPage的xaml.cs和.xaml - 这将添加5个文件到Common文件夹。
- 将Common / LayoutAwarePage.cs继承更改为Cirrious.MvvmCross.WindowsStore.Views.MvxStorePage
- 更改Common / LayoutAwarePage.cs - 删除OnNavigatedTo和OnNavigatedFrom处理程序
- 为你的Xaml添加一些内容 - 例如<TextBlock Grid.Row="1" Text="{Binding Hello}"/>

如果我从FirstView.xaml.cs文件中删除OnNavigatedToOnNavigatedFrom覆盖,则FirstViewModel将正确绑定到FirstView

所以,据我所知,Windows 8.1上Windows Store应用程序的说明应该是:

  • 在每个视图.xaml文件中,将<Page>更改为<views:MvxStorePage>
  • 在每个视图.xaml.cs文件中,删除OnNavigatedToOnNavigatedFrom覆盖。

编辑此外,为了避免视图模型混淆,从.xaml.cs文件中删除DefaultViewModel属性和关联的defaultViewModel字段也是一个好主意,并且还从<views:MvxStorePage>标记中删除DataContext属性在.xaml文件中,因为无论如何都会由MvvmCross设置相关的DataContext

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM