2015-03-31 32 views
0

我已經安裝了Xamarin插件與VS2013,和我的應用程序功能與Android和ios,在我的便攜式核心我有我的ViewModels在這種情況下我的文件是OficinaViewModel的.csMvvmCross傳遞值ViewModels(便攜式)查看(Android和IO)

public class OficinaViewModel : MvxViewModel{   
    private List<main> oficinas; 
    public List<main> Oficinas { 
     get { return oficinas; } 
     set { oficinas = value; RaisePropertyChanged(() => Oficinas); } 
    }   
    public OficinaViewModel(ICrdDataService dbService) 
    {      
     try{ 
      List<main> datosOf = dbService.GetAllMain().FindAll(p => p.element_type == "OF'"); 
      Oficinas = datosOf; 
     }catch (Exception ex) { 
      var msg = ex.Message; 
     }      
    } 
} 

在我的項目的Android,我需要找回Oficinas的價值,但我需要的變量不是在XAML地方:MvxBind,這個價值我想在我的文件OficinaView.cs

protected override void OnCreate(Bundle bundle){ 
    base.OnCreate(bundle); 
    SetContentView(Resource.Layout.OficinaView);    
    SetupMap(); 
    //In this point I need retrieve the value of "Oficinas" from ViewModels 
} 

我怎樣才能檢索列表「Oficinas」從ViewModels(核心)在我的意見(OficinaView.cs)的價值?項目的Android

回答

0

我可以這樣解決:

var oficinas = (ViewModel as CrdMovil.Core.ViewModels.OficinaViewModel).Oficinas; 
+0

我想你可以避免轉換,如果你從'MvxViewModel 繼承' – Stuart 2015-10-28 15:21:37

0
var oficinas = (ViewModel as CrdMovil.Core.ViewModels.OficinaViewModel).Oficinas; 

這是什麼視圖模型,你的情況[(視圖模型爲CrdMovil.Core.ViewModels.OficinaViewModel)

我有類似的情況,我得到一個例外。