2017-01-30 3 views
0

nullです...私は、メニュー項目とMvxGridViewを持っており、このようによってitemClick ShowMenuCommandMvxGridViewバインドによってitemClickとリストは、私が問題を抱えているViewModelに初期に

と:

private ICommand _showMenuCommand; 
     public ICommand ShowMenuCommand 
     { 
      get 
      { 
       _showMenuCommand = _showMenuCommand ?? new MvxCommand<Menu>(DoShowMenuCommand); 
       return _showMenuCommand; 
      } 
     } 

     private void DoShowMenuCommand(Menu menu) 
     { 
      ShowViewModel<MenuCardViewModel>(menu); 
     } 

メニューは、ヘッダのようないくつかのプロパティが含まれています、名前、画像などが含まれますが、Listメニュー項目も含まれています。私はデバッグしDoShowMenuCommandメニューのブレークポイントは、メニューアイテムのリストを持っているが、私は方法のInitにMenuCardViewModelでデバッグおよびブレークポイントときとき:

public void Init(Menu menu) 
     { 
      // HERE.. 
     } 

だからここにメニューが持っているのMenuItemリストが、すべてがnullです。私はなぜ知りません...すべての理由はここにいくつかのヒントしかし、リストはnullですか?

答えて

0

MvvmCrossは複雑なDTOをJSONにシリアライズします。私はあなたがこれを実装したかどうかはわかりませんが、あなたはそれをこのように試してみて、それが助けかどうかを確認できます。

private void DoShowMenuCommand(Menu menu) 
{ 
    ShowViewModel<MenuCardViewModel,Menu>(menu); 
} 

だから、二ジェネリックはあなたが合格したいモデルです。これが機能しない場合

protected override Task Init(Menu menu) 
{ 

} 

私はなぜあなたにダイビングをお勧めします:次のステップは、これは、initメソッドを実装するために必要となる「MenuCardViewModel」

public class MenuCardViewModel : MvxViewModel<Menu> 

への一般的なメニューを追加することですリストはシリアライズ可能/デシリアライズ不可能です。

関連する問題