2017-09-25 21 views
1

私はMVVMCrossで新しく、デモコードをhereに書き直しました。多くは変更されていませんが、バインディングは機能しません。デバッグのエラーログが表示されるはずです。また、私はここでの命名規則 を読んで、私のviewmodelクラスですAndroidのMVVMCrossバインディングが機能しない

public class FirstViewModel:MvxViewModel 
{ 
    private string _firstName; 
    private string _lastName; 

    public string FirstName { 
     set { SetProperty(ref _firstName, value); RaisePropertyChanged(() => FirstName); } 
     get { return _firstName; } 
    } 

    public string LastName { 
     set { SetProperty(ref _lastName, value); RaisePropertyChanged(() => LastName); } 
     get { return _lastName; } 
    } 

    public string FullName { 
     get { return string.Format("{0} {1}", _firstName, _lastName); } 
    } 
} 

ビュー:

public class FirstView : MvxActivity<FirstViewModel> 
{ 
    protected override void OnCreate (Bundle bundle) 
    { 
     base.OnCreate (bundle); 
     SetContentView (Resource.Layout.FirstView); 
    } 
} 



<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:local="http://schemas.android.com/apk/res-auto" 
android:orientation="vertical" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent"> 
<EditText 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:textSize="40dp" 
    local:MvxBind="Text FirstName" /> 
<EditText 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:textSize="40dp" 
    local:MvxBind="Text LastName" /> 
<TextView 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:textSize="40dp" 
    local:MvxBind="Text FullName" /> 
</LinearLayout> 

答えて

0

申し訳ありませんが、この愚かな質問のために、単にコードのこれらの行を変更し、それが動作 RaisePropertyChanged(()=> FullName RaisePropertyChanged(()=> FullName

関連する問題