0

我有一个 Point2D 双精度结构(带有 x 和 y 成员)。我想将 Point2D 的实例绑定到两个单独的文本框。我怎样才能做到这一点?

4

1 回答 1

3

为什么使用结构?写一堂课

public class Point2D : INotifyPropertyChanged
{    
    public event PropertyChangedEventHandler PropertyChanged;

    private double _x;
    private double _y;    

    public double X
    {
        get { return _x; }
        set
        {
            _x = value;
            NotifyPropertyChanged("X");
        }
    }

    public double Y
    {
        get { return _y; }
        set
        {
            _y = value;
            NotifyPropertyChanged("Y");
        }
    }

    private void NotifyPropertyChanged(string propertyName)
    {
        var handler = PropertyChanged;
        if (handler != null)
        {
            handler(this, new PropertyChangedEventArgs(propertyName));
        }
    }    
}

DataContext 中的属性

public Point2D MyPoint2D { get; set; }

以及 XAML 中的绑定

<TextBox Name="TextBoxValueX" Text="{Binding MyPoint2D.X, UpdateSourceTrigger=PropertyChanged}" />
<TextBox Name="TextBoxValueY" Text="{Binding MyPoint2D.Y, UpdateSourceTrigger=PropertyChanged}" />

希望能帮助到你!

于 2013-10-22T12:52:14.060 回答