【发布时间】:2017-10-28 10:32:26
【问题描述】:
我是 MvvmCross 的新手,我有一个关于 Android 绑定的问题。我可以绑定到单个属性,但无法将数据绑定到对象。不知道我做错了什么,但这里是:
模型类:
public class Login : MvxNotifyPropertyChanged
{
private string _email;
public string Email
{
get { return _email; }
set
{
SetProperty(ref _email, value);
}
}
public string Password { get; set; }
}
视图模型类片段:
public class LoginOptionViewModel: MvxViewModel
{
private readonly IMvxNavigationService _navigationService;
public LoginOptionViewModel(IMvxNavigationService navigationService)
{
_navigationService = navigationService;
LoginCommand =
new MvxAsyncCommand(async () => await _navigationService.Navigate<RegistrationViewModel>());
}
public IMvxAsyncCommand LoginCommand { get; set; }
private Login _loginInfo;
public Login LoginInfo
{
get
{
return _loginInfo ?? new Login();
}
set
{
_loginInfo = value;
RaisePropertyChanged(() => LoginInfo);
}
}
}
Android Axml 片段:
<EditText
android:id="@+id/loginEmailTxt"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/EmailHint"
android:textColor="@color/darkNavy"
android:inputType="textEmailAddress"
local:MvxBind="Text LoginInfo.Email" />
我哪里出错了,我已经放置了一个断点,但没有看到它被击中。这绑定到 EditText 但似乎没有发生任何事情。为了绑定到对象属性,我是否遗漏或做错了什么?
【问题讨论】: