我需要一个按钮来在视图中移动,当它被点击时。我已通过以下方式绑定按钮(Android)
set.Bind(_paramsButton).For(pb => pb.LeftMargin).To(vm => vm.ButtonX).OneWay();
set.Bind(_paramsButton).For(pb => pb.TopMargin).To(vm => vm.ButtonY).OneWay();
set.Bind(_paramsButton).For(pb => pb.Height).To(vm => vm.ButtonHight).OneWay();
set.Bind(_paramsButton).For(pb => pb.Width).To(vm => vm.ButtonWidth).OneWay();
在 viewModel 我有“正常”的属性
private int _buttonX;
public int ButtonX
{
get { return _buttonX; }
set { _buttonX = value; RaisePropertyChanged(() => ButtonX); }
}
等等
这工作正常。现在我有 10 个按钮,想绑定
for(int i=0; i<10; i++){
set.Bind(_paramsButton[i]).For(pb => pb.LeftMargin).To(vm => vm.ButtonX[i]).OneWay();
set.Bind(_paramsButton[i]).For(pb => pb.TopMargin).To(vm => vm.ButtonY[i]).OneWay();
set.Bind(_paramsButton[i]).For(pb => pb.Height).To(vm => vm.ButtonHight[i]).OneWay();
set.Bind(_paramsButton[i]).For(pb => pb.Width).To(vm => vm.ButtonWidth[i]).OneWay();
}
或者
for(int i=0; i<10; i++){
set.Bind(_paramsButton[i]).For(pb => pb.LeftMargin).To(vm => vm.Button[i].X).OneWay();
set.Bind(_paramsButton[i]).For(pb => pb.TopMargin).To(vm => vm.Button[i].Y).OneWay();
set.Bind(_paramsButton[i]).For(pb => pb.Height).To(vm => vm.Button[i].Height).OneWay();
set.Bind(_paramsButton[i]).For(pb => pb.Width).To(vm => vm.Button[i].Width).OneWay();
}
我的问题出在 viewModel 中,我不知道如何让 RaisePropertyChanged 触发数组列表中的各个项目。有人有关于如何在模型视图中声明整数数组的示例吗?