现在是时候为windows phone 8的pivot应用设计ViewModel了
本文关键字:应用 pivot ViewModel phone windows | 更新日期: 2023-09-27 17:49:26
我正在使用MVVM Light创建一个Windows Phone 8 Pivot应用程序,我想知道如何设计我的视图模型。应用程序的每个支点(总共3-4个)使用不同的数据集合。
我正在考虑的选项是:
- 有一个MainViewModel,其中包含不同轴的不同集合。我在MVVM上读到的最佳实践都是强制性的(这是我如何理解他们至少),一个视图应该有一个ViewModel,所以这个选项很自然。
- 为每个枢轴提供一个单独的ViewModel和一个MainViewModel来引用它们。这个选项对我来说在分离和代码结构方面更有意义。它确实使绑定和命令连接变得有点棘手。
你认为哪个选项更好?
只有一个视图模型,然后每个视图模型都有单独的集合。有必要的集合项绑定到pivot项。
视图<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:
public class MainModel
{
public ItemViewModel Collection1 { get; set; }
public void LoadData()
{
Collection1=CreateCollection();
创建适当的数据上下文。
教程:数据绑定和透视教程