我目前正在开发一个需要同一个视图模型的多个视图的项目。让我用这种方式描述:
我目前正在使用NavigationService导航到CustomerInfo视图。有没有办法将当前viewmodel的引用传递给用户在caliburn.micro中导航到的视图?
提前致谢
IDEV
答案 0 :(得分:2)
使用附加属性cal:Bind.Model =“{Binding}”将视图绑定到视图模型。 请参阅http://caliburnmicro.codeplex.com/wikipage?title=All%20About%20Actions“查看第一个”部分。
或者您也可以查看cal:View.Context =“MyContext”附加属性,如下所述:http://caliburnmicro.codeplex.com/wikipage?title=Screens%2c%20Conductors%20and%20Composition“同一ViewModel上的多个视图”部分。
答案 1 :(得分:1)
在App.xaml.cs中添加一两个属性。你在这里放置的内容将在应用程序的整个生命周期中持续存在(请记住,墓碑将导致此属性的值丢失)。如果要传递ViewModel,然后将App.xaml.cs中的关联属性setyour到视图模型,然后在新页面加载时从同一属性读取。