2017-05-04 1 views
0
couramment

J'ai EditText avec liaison suisse (dernière ligne):Mvvmcross Visibilité dans la liaison

<EditText 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      app:MvxBind="Visibility Visibility(WebServiceEditVisible); Text EditTextWebServiceAdress" /> 

Comment puis-je écrire lier au plugin Visibilité et propriété Text en utilisant la liaison Courant?

Répondre

2

L'équivalent de liaison couramment à la liaison suisse que vous avez mis en œuvre serait:

fichier de ressources:

<EditText 
    android:id="@+id/your_edit_text" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" /> 

Codebehind:

var myEditText = view.FindViewById<EditText>(Resource.Id.your_edit_text); 
var bindingSet = this.CreateBindingSet<YourView, YourViewModel>(); 

bindingSet.Bind(yourEditText).For(c => c.Text).To(vm => 
vm.EditTextWebServiceAdress); 
bindingSet.Bind(yourEditText).For(c => c.Visibility).To(vm => 
vm.WebServiceEditVisible).WithConversion(new MvxVisibilityValueConverter()); 

bindingSet.Apply(); 

Ce code irait dans le remplacement OnCreateView de votre fragment. Si vous travaillez à l'intérieur d'une activité, il est préférable de le faire dans OnCreate et de modifier view.FindViewById<EditText>(Resource.Id.your_edit_text); en FindViewById<EditText>(Resource.Id.your_edit_text);.