2016-11-14 8 views
2

私はApp.xamlで私MainViewModelクラスを宣言形成する場合、私は負荷にこのエラーを取得する:シェアXamarinのページ間の単一のViewModelのインスタンスが

Xamarin.Forms.Xaml.XamlParseException:位置7:6。プロパティ「リソース」を割り当てることができません:型の不一致「をMyPCL.Client.ViewModels.MainViewModel」と「Xamarin.Forms.ResourceDictionary」私はこれを行うことができ、すべてのページのように、私は世界のViewModelに宣言することができますどのように

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

間:

あなたが Application.Resourcesタグ内 ResourceDictionaryを宣言する必要が
BindingContext="{StaticResource MainViewModel}" 

答えて

2

<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> 

エラーメッセージが指摘するように。あなたはほとんどそこにいます。

関連する問題