将矩形位置绑定到另一个矩形

时间:2011-09-05 11:20:59

标签: c# data-binding

我正在尝试绘制图表并陷入设计问题。在Chart-class中,我将要绘制的区域的形状定义为Rectangle:

class Chart
{
   // ...
   public Rectangle drawArea;

   public void addAxisDesc(AxisDescription desc)
   {
      // ... add left Y-axis
      // set the axis x-starting position to the start point of the drawing area
      desc.shape.X = drawArea.X;
   }          
}

Chart-class能够添加一些轴描述,其形状也由Rectangle定义。

我的目标是保持desc.shape.X和drawArea.X中的值相同。因此,如果drawArea.X发生变化,desc.shape.X也应该被修改。

我有一些想法如何解决这个问题,但它们对我来说似乎都不是很好:

  • 如果drawArea的值更改
  • ,则注册事件处理程序并修改轴的值
  • 设置相对于父元素的所有位置,仅在渲染时获取绝对位置

有人知道如何解决这个问题,或者可能根本无法解决问题?

1 个答案:

答案 0 :(得分:1)

我建议你选择事件方法。这与WPF用于数据绑定的方法相同。甚至存在用于此目的的界面:INotifyPropertyChanged