我对mvvm的想法是对的吗?

时间:2014-01-10 22:23:26

标签: mvvm

我在进入mvvm时遇到了一些困难。我正在写一个简单的应用程序,Notebook。我有一个viewmodel,它的名字实际上是ViewModel。它内部有一个ObservableCollection Notes,以及从隔离存储中保存和加载它们的方法。我唯一的模型是Note.cs,它实现了INotifyPropertyChanged,我当然是RaisingPropertyChanged

我还有两个视图,它们都是用户控件。一个用于显示注释列表,另一个用于编辑从列表中选择的注释。

我的问题是:

  • 我在哪里创建我的vievmodel实例?
  • 在选择一个要编辑的注释后,我应该如何实现从具有详细视图的页面到具有注释列表的页面?在 我正在App.xaml.cs中保存Note的索引,转到下一页并进行设置 DataContext中右侧注释中的详细视图OnNavigatedTo,但是 我认为这不是一个完美的解决方案。
  • 我应该在哪里保存笔记?我猜App.xaml.cs中的Application_Closing是正确的地方,但是我必须将我的viewmodel作为一个全局对象,这是正确的方法吗?

其他问题: 我必须增加组合笔记的可能性。我猜那个带有字典(GroupName, howManyNotes)的类组将会很好,因为我不必能够编写所选组中的所有音符。你认为我应该考虑更好的方法吗?

感谢您的回复, 米哈尔。

1 个答案:

答案 0 :(得分:1)

我建议你看看Calibrun.Micro这是一个很棒的MVVM框架。您可以从CodePlex获取一些样本。

我在一堆Project中使用过它,如果你的项目规模增大,它会给你灵活性。

Google for Caliburn.Micro示例,您将找到适用于WPF,Silverlight,Windows Store,Windows Mobile等所有技术的大量示例。

Caliburn.Micro CodePlex