2016-10-10 44 views
0

結合在一個Android佈局文件MvxBind屬性的視圖模型屬性通常MvvmCross語法如下:MvvmCross MvxBind語法綁定到視圖模型本身(不ViewModel.Property)

<SomeControl 
    local:MvxBind="ViewProperty ViewModelProperty" /> 

所以要訪問ViewModel.ViewModelProperty我只需輸入屬性名稱即可。

但訪問ViewModel本身(不是其屬性之一)的正確語法是什麼?

隨着流利的API,你也許可以做這樣的事情(未測試):

this.CreateBindingSet<SomeView, string>() 
    .Bind(someControl) 
     .For(v => v.Text) 
     .To(vm => vm) 
    .Apply(); 

什麼是等效的,隨着佈局文件MvxBind語法?

回答

2

是的。 A .應該這樣做。

<SomeControl local:MvxBind="ViewProperty ." /> 

但還有一個更短的方式(我不使用) https://github.com/MvvmCross/MvvmCross/wiki/databinding#swiss

如果$ SOURCEPATH $省略或單句點 「」被使用,那麼使用的源是整個ViewModel。

所以,你應該能夠只是做這樣的事

<SomeControl local:MvxBind="ViewProperty" /> 
+0

兩種語法都可以正常使用! – lauxjpn