首页 > 解决方案 > 三向数据绑定

问题描述

您好我想将 TrackBar 的 Value 属性绑定到两个对象的 BrightnessPercentage 属性。我这样做时出错,有人可以告诉我如何在我的 TrackBar 和两个对象之间完成三向绑定吗?

class ImageProperties {
  public int BrightnessPercentage { get; set; }
}

class ImageDrawer {
  public int BrightnessPercentage { get; set; }
}

ImageProperties _imgProps = new ImageProperties();
ImageDrawer _imgDrawer = new ImageDrawer();

void Test() {
    trackBar1.DataBindings.Add("Value", _imgProps, "BrightnessPercentage", false, DataSourceUpdateMode.OnPropertyChanged);

    trackBar1.DataBindings.Add("Value", _imgDrawer, "BrightnessPercentage", false, DataSourceUpdateMode.OnPropertyChanged);
}

提前致谢!

标签: c#winformsbinding

解决方案


class ImageProperties {      
  public int BrightnessPercentage { get; set; }
}

class ImageDrawer {
  public int BrightnessPercentage { get; set; }
}

ImageProperties _imgProps = new ImageProperties();
ImageDrawer _imgDrawer = new ImageDrawer();

public int TheBrightnessPercentage {
  get { return _imgProps.BrightnessPercentage;}
  set { _imgProps.BrightnessPercentage=_imgDrawer.BrightnessPercentage=value;}
}
void Test() {
    trackBar1.DataBindings.Add("Value", this, "TheBrightnessPercentage", false, DataSourceUpdateMode.OnPropertyChanged);    
}

推荐阅读