protected internal override void OnXYUpdated() { if (InToolbox) { return; } mBlock.XY = XY; //update all connection's location foreach (var view in Childs) { if (view.Type == ViewType.Connection) { view.OnXYUpdated(); } else if (view.Type == ViewType.LineGroup) { LineGroupView groupView = view as LineGroupView; foreach (var inputView in groupView.Childs) { ConnectionInputView conInputView = ((InputView)inputView).GetConnectionView(); if (conInputView != null) { conInputView.OnXYUpdated(); } } } } }