什么是棱镜MVVM框架做计算性能的最佳方式是什么?我有一个Xamarin.Forms
与应用程序在虚拟机上的以下属性:计算属性在棱镜
private string _title;
public string Title
{
get { return _title; }
set
{
SetProperty(ref _title, value);
OnPropertyChanged(() => Message);
}
}
private string _name = "John";
public string Name
{
get { return _name; }
set
{
SetProperty(ref _name, value);
OnPropertyChanged(() => Message);
}
}
public string Message
{
get { return String.Format("{0},{1}", Name, Title); }
}
代码工作就好了。然而,棱镜库警告我在OnPropertyChanged
语句中使用RaisePropertyChanged
这将避免使用魔法字符串和OnPropertyChanged与表达效率较低。
有一些其他方法来通知视图重读“消息”每当姓名或名称的改变?
它让我想也许棱镜有办法做一些事情,让“名”和“标题”不必知道的消息,以便进行更新的消息。如果可能,这将是优选的。计算属性的“棱镜”方式是什么?我在Xamarin.Forms
文档中找不到任何示例。
线'的SetProperty(参见_name,值);'而事实上,所有视图模型从'BindableBase'(INotifyPropertyChanged'的'实现)继承已更新,只要你更新这些属性的UI。你永远不必显式调用'RaisePropertyChanged'或'OnPropertyChanged'。因此,您需要将您的消息设置为与Name一样的属性。 – ethane