private void UserControl_Tapped(object sender, TappedRoutedEventArgs e) { if (!IsClick) { ConnectedConnectorProperty = this; IsClick = true; stroke.Opacity = 0.5; } else { if (!ConnectedConnectorProperty.Equals(this)) { CustomVisualTreeHelper.KernelCanvas.Children.Add(new WireControl(ConnectedConnectorProperty, this)); } ConnectedConnectorProperty.stroke.Opacity = 0; IsClick = false; } }
public WireControl(ConnectorControl connector_1, ConnectorControl connector_2) { this.InitializeComponent(); this.connector_1 = connector_1; this.connector_2 = connector_2; UpdateSegmentsPosition += Update; UpdateSegmentsPosition += Segment_1.Update; UpdateSegmentsPosition += Segment_2.Update; UpdateSegmentsPosition += Segment_3.Update; connector_1.OnChangeElementPosition += UpdateSegmentsPosition; connector_2.OnChangeElementPosition += UpdateSegmentsPosition; connector_1.OnDeleteComponent += DeleteElement; connector_2.OnDeleteComponent += DeleteElement; Segment_1.OnClickDeleteSegmentWire += DeleteElement; Segment_2.OnClickDeleteSegmentWire += DeleteElement; Segment_3.OnClickDeleteSegmentWire += DeleteElement; Segment_2.UpdateComponent += UpdateBinding; UpdateSegmentsPosition(); }