我对 WinRT 中的绑定有疑问。我有一个像这样的视图模型:
public class MainPageViewModel : INotifyPropertyChanged
{
private ObservableCollection<Vehicle> _vehicles = new ObservableCollection<Vehicle>();
public ObservableCollection<Vehicle> Vehicles
{
get { return _vehicles; }
set { _vehicles = value; }
}
而且我还有一些属性可以从这个主列表中获取值,例如
public int GetType1Vehicles
{
get { return Vehicles.Where(x => x.Type == Type1).Count(); }
}
public int TotalVehicles
{
get { return Vehicles.Count(); }
}
我将一个 UI 文本框绑定到“GetType1Vehicles”,将另一个文本机器人绑定到“TotalVehicles”。问题是当我更新车辆列表时,所有车辆的 ListView 都正确更新,但 Total 和 Type 没有。我做错了什么?任何人都可以帮助我吗?谢谢!
更新我找到了一个解决方法,但我不确定这是最好的方法。每次我从列表中更改一些时,手动调用方法:
RaisePropertyChanged("GetType1Vehicles");
RaisePropertyChanged("TotalVehicles");
是正确的方法吗?