void AddItem(Item val) { this.Dispatcher.Invoke(new Action <Item>((one) => { float height = arrangement.GetTotalHeight(); int rate = DisplayOptions.DisplayRate; if (MainContainer.Height < height * rate) { MainContainer.Height = height * rate; } UIElement photo = CreateMovable(val); photo.MouseLeftButtonDown += ImageClick; photo.MouseLeftButtonUp += ImageRelease; photo.MouseMove += ImageMouseMove; photo.MouseRightButtonUp += ImageSelect; Canvas.SetLeft(photo, one.Left * rate); Canvas.SetTop(photo, one.Top * rate); MainContainer.Children.Add(photo); }), val); }