2016-11-14 30 views
2

當我宣佈我MainViewModel類App.xaml中,我得到負荷此錯誤:分享在Xamarin頁面之間的單一視圖模型實例窗體

Xamarin.Forms.Xaml.XamlParseException:位置7:6。無法分配財產「資源」:類型不匹配「MyPCL.Client.ViewModels.MainViewModel」和「Xamarin.Forms.ResourceDictionary」

<Application.Resources> 
    <viewModels:MainViewModel x:Key="MainViewModel"/> 
    </Application.Resources> 

我怎樣才能宣佈全球視圖模型,讓每個網頁上我可以做到這一點之間:

BindingContext="{StaticResource MainViewModel}" 

回答

2

你需要聲明一個ResourceDictionaryApplication.Resources標籤中:

<Application.Resources> 
    <ResourceDictionary> 
     <viewModels:MainViewModel x:Key="MainViewModel"/> 
    </ResourceDictionary> 
    </Application.Resources> 
+0

herp derp對我而言。謝謝! – shady

0

你也可以只創建一個新的派生ContentPage這臺是BindingContext在構造函數中,像這樣:

public class MainContentPage : ContentPage { 

    protected MainViewModel viewModel; 

    public MainContentPage() { BindingContext = (viewModel = new MainViewModel()); } 
} 
0

它應該是:

<Application.Resources> 
    <ResourceDictionary> 
    <viewModels:MainViewModel x:Key="MainViewModel"/> 
    </ResourceDictionary> 
    </Application.Resources> 

的錯誤消息指出。你快到了。

相關問題