我们正在使用一些 MT.D StringElements,它们的 Value 属性绑定到 ViewModel 中的属性。
初始值已正确显示,但当 ViewModel 更改某些值并触发 PropertyChanged 时,StringElements 包含良好值但显示未刷新。
如果我们滚动控制器或触摸 StringElement,它就会被刷新:显示正确的值。
你有什么主意吗?
这是我们的视图控制器
public class ContactView : MvxDialogViewController
{
public override void ViewDidLoad()
{
base.ViewDidLoad();
var bindings = this.CreateInlineBindingTarget<ContactViewModel> ();
Root = new RootElement()
{
new Section()
{
new StringElement("Company Name").Bind(bindings, vm => vm.CompanyName)
}
}
}
}
这是我们的 ViewModel(简化版)
public class ContactViewModel : MvxViewModel
{
private string companyName;
public string CompanyName{
get{return companyName;}
set{companyName = value; RaisePropertyChanged(() => CompanyName);}
}
public async Task Init(string id)
{
var contact = await someService.SomeMethodAsync();
CompanyName = contact.CompanyName;
}
}