2010-08-17 74 views
2

我建了一个名叫小部分,具有三个属性的结构:双重价值INT分母INT分母。在我的数据源中,我使用分数作为属性,分数位置绑定到一个子属性

数据绑定这样的:

<TextBox Text="{Binding Path=Position.Numerator}"/> 
    <TextBox Text="{Binding Path=Position.Denominator}"/> 

但绑定发生的工作只有一个办法 - 从源到目标。我试图捕捉SourceUpdated事件,但它不起作用。

有没有办法强制双向绑定?我试过Mode = TwoWay,但它也没有工作。

回答

0

您可能必须创建Position作为一个依赖属性,这样,当目标更新源更新过

编辑

请它应该像

public static readonly DependencyProperty PositionProperty = DependencyProperty.Register("Position", typeof(Fraction), typeof(NoteUserControl),new UIPropertyMetadata(new Fraction())); 

public Fraction Position 
     { 
      get { return (Fraction)GetValue(PositionProperty); } 
      set 
      { 
       SetValue(PositionProperty, value); 

      } 
     } 

希望NoteUserControl是您已定义依赖项属性的类

+0

我添加了这行: public static readonly DependencyProperty PositionProperty = DependencyProperty.Register(“Position”,typeof(Fraction),typeof(NoteUserControl)); 和绑定停止工作! – gideonrv 2010-08-17 09:03:00

+0

@gideonrv请参阅编辑 – 2010-08-17 10:10:13

+0

我试过了,使用UIPropertyMetadata并且没有它,但它仍然不起作用。我希望,作为一名音乐家,你希望看到我的项目。它是一个MIDI钢琴。请致电[email protected]。 – gideonrv 2010-08-17 19:11:20