在 MvvmCross N=26 教程中,动态片段通过视图中的按钮单击事件加载到框架中(下面的代码片段)。但是,我试图弄清楚如何在 ViewModel 中而不是在 View 中处理 click 事件。单击按钮后,我如何知道单击了按钮并在视图中将正确的片段加载到框架中?
例如,我在 FirstView xml 中可能有 10 个片段和一个帧。我希望能够根据 FirstViewModel 中引用的对象的属性在该帧中加载这 10 个片段中的任何一个。我可以在视图中检查该属性并从可用的 10 个片段中加载我想要的片段吗?(即去掉View中的but1.Click事件,仍然根据ViewModel中对象的值运行事务)
but1.Click += (sender, args) =>
{
var dNew = new DubFrag()
{
ViewModel = ((SecondViewModel) ViewModel).Sub
};
var trans3 = SupportFragmentManager.BeginTransaction();
trans3.Replace(Resource.Id.subframe1, dNew);
trans3.AddToBackStack(null);
trans3.Commit();
};