首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >热设计windows 8枢轴应用程序的ViewModel

热设计windows 8枢轴应用程序的ViewModel
EN

Stack Overflow用户
提问于 2014-03-10 05:28:23
回答 1查看 592关注 0票数 1

我正在创建一个使用MVVM的Windows 8数据透视应用程序,我想知道如何设计我的视图模型。应用程序的每个枢轴(总共3-4个)都使用不同的数据集合。

我现正考虑的方案如下:

  1. 有一个MainViewModel,它包含不同支点的不同集合。MainViewModel--我在MVVM上读到的最佳实践--都要求(至少我是这样理解的),一个视图应该有一个ViewModel,所以这个选项很自然。
  2. 对每个支点都有一个单独的ViewModel和一个引用它们的MainViewModel。这个选项在分离和代码结构方面对我来说更有意义。它确实会使绑定和命令连接变得更加棘手。

你说哪种选择更好?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-10 06:02:35

只有一个视图模型,然后为每个视图模型拥有单独的集合。有必要的集合项绑定到枢轴项。

视图

代码语言:javascript
复制
<phone:Pivot x:Name="TutoPivot" 
        SelectionChanged="PivotSelectionChanged">
        <!--Pivot item one-->
        <phone:PivotItem Header="{Binding Collection1.Title}">
            <!--Double line list with text wrapping-->
            <phone:LongListSelector Margin="0,0,-12,0"
                SelectionChanged="LongListSelector_SelectionChanged"
                LayoutMode="Grid"
                GridCellSize="150,150"
                ItemsSource="{Binding Collection1.Items}"
                ItemTemplate="{StaticResource NewSoundTemplate}"
                                    />

ViewModel:

代码语言:javascript
复制
public class MainModel
{
    public ItemViewModel Collection1 { get; set; }
    public void LoadData()
    {
        Collection1=CreateCollection();

创建适当的数据上下文。

教程:数据绑定和枢轴教程

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22292670

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档