如何在MvvmCross中动态更新绑定?
作者:互联网
我知道,当我们调用SetContentView时,最初会挂接MvvmCross中的绑定.但是,我正在动态创建一个新视图,并且未绑定该视图的绑定.是否有一种方法可以使MvvmCross绑定挂接到最初调用SetContentView之后创建的视图?
具体来说,在我的示例中-我正在为Google Glass客户端编码并实现多个卡.当某些信息发送到Glass时,我创建了一个新卡,并为该新卡的视图添加了一个xml文件,但绑定没有被挂钩.
创建新卡的代码:
_cardScrollAdapter.AddItem(LayoutInflater.Inflate(Resource.Layout.new_panel_view, null))
创建绑定的XML部分:
local:MvxBind="Bitmap BitmapConverter(PanelViewModel.Image); Visibility Visibility(PanelViewModel.ShowImage)"
解决方法:
该问题与以下事实有关:您传递的是使用Android LayoutInflater.Inflate方法而不是MvvmCross BindingInflate方法传递的View.通过使用Cirrious.MvvmCross.Binding.Droid.BindingContext;在文件的顶部,以下应该起作用:
_cardScrollAdapter.AddItem(this.BindingInflate(Resource.Layout.media_panel_view,null));
标签:binding,mvvmcross,c,android,google-glass 来源: https://codeday.me/bug/20191121/2052498.html