public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            if (value == null)
                return null;

            WallDetails wallDetails = (WallDetails)value;
            Point origin = (Point)parameter;

            WallElementDetails newWallElementDetails = new WallElementDetails();

            newWallElementDetails.StartPoint = new Point(wallDetails.StartEchelonPoint.X + origin.X,
                                                         wallDetails.StartEchelonPoint.Y + origin.Y);
            newWallElementDetails.EndPoint = new Point(wallDetails.EndEchelonPoint.X + origin.X,
                                                         wallDetails.EndEchelonPoint.Y + origin.Y);
            return newWallElementDetails;
        }
示例#2
0
        private void OnWallDetailsChanged(DependencyObject obj, DependencyPropertyChangedEventArgs e)
        {
            WallElementDetails newWallElementDetails = new WallElementDetails();
            newWallElementDetails.StartPoint = GetAsPoint(WallDetails.StartEchelonPoint);
            newWallElementDetails.EndPoint = GetAsPoint(WallDetails.EndEchelonPoint);
            newWallElementDetails.IsFinal = true;

            WallElementDetails = newWallElementDetails;

            if (WallDetails.IsFinal)
            {
                WallDetails.IsFinal = false;
            }
        }