using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; namespace RoboforkApp { /// /// Interaction logic for ucDisplayAxisPosition.xaml /// public partial class ucDisplayCoordinate : UserControl { public ucDisplayCoordinate() { InitializeComponent(); } private bool _isDisplay = false; public static readonly DependencyProperty coordStringProperty = DependencyProperty.Register("coordString", typeof(String), typeof(ucDisplayCoordinate), new FrameworkPropertyMetadata(string.Empty)); public String coordString { get { return GetValue(coordStringProperty).ToString(); } set { SetValue(coordStringProperty, value); } } public bool IsDisplay { get { return _isDisplay; } set { _isDisplay = value; } } private void UpdateCoordString(double X, double Y) { coordString = "(" + Math.Round(X, 2) + ", " + Math.Round(Y, 2) + ")"; } private void UpdateCoordString(Point point) { coordString = "(" + Math.Round(point.X, 2) + ", " + Math.Round(point.Y, 2) + ")"; } private void UpdatePosition(Point point) { Canvas.SetTop(this, point.Y + 10); Canvas.SetLeft(this, point.X + 10); UpdateCoordString(point); } // Display public void Display(Point point) { IsDisplay = true; UpdatePosition(point); } } }