2014-03-27 75 views
0

我有一個基本的MVVM輕的Windows Phone 8應用程序創建。我有MainView,顯示爲啓動頁面。這會自動獲取MainViewModel的新實例的datacontext。當我導航到視圖時,如何將視圖模型鏈接到視圖?

我想導航到另一個視圖,並將一個新的viewmodel(或導航中提供的現有視圖)設置爲該視圖的datacontext。

我該怎麼做?

我有導航通過http://mvvmlightnavigation.codeplex.com/SourceControl/latest#MVVMlightNavigationService/NavigationService.cs

工作,我應該用別的東西導航?

+0

http://www.geekchamp.com/articles/mvvm-in-real-life-windows-phone-applications-part1可能這會幫助你 – Jaihind

回答

1

在XAML

的BasePage的標籤

您可以將您的視圖模型這樣

<basepage:BaseApplicationPage 
DataContext="{Binding YourViewModel, Source={StaticResource Locator}}"> 

確保你必須與你在數據方面給予相同的名字註冊的視圖模型。 我正在使用MVVMlight,因此ViewModel和View已在'ViewModelLocator'中註冊。

希望這有助於

+0

是的,你說得對。這是MVVM light如何進行鏈接。我認爲它是自動解決的,就像在校準中一樣。 – Thraka

+0

我的理解是,鏈接是通過ViewModel註冊的名稱完成的。數據上下文中的名稱應與ViewModelLocator相同。所以定位器將識別相應的視圖模型。 –

相關問題