private void SendMessage1(IMessage message) { if (message.Key.Equals(string.Empty) == false && props.Contains(message.Key.ToString())) { message = new Message(message.From, node2.Key, message.Key, message.Content); if (message.Key.Equals(nameof(node1.X))) { RaisePropertyChanged(nameof(this.X1)); } if (message.Key.Equals(nameof(node1.Y))) { RaisePropertyChanged(nameof(this.Y1)); message = Modify(message, node1.Size); } MovePoint1To2(); Task.Delay(Delay).ContinueWith(a => { Messages1.Add(message); node2.NextMessage(message); }, TaskScheduler.FromCurrentSynchronizationContext()); } }