/// <summary> /// Lukker et bestemt DropIn /// </summary> public void CloseDropIn(BaseDropIn baseDropIn) { var dropInX = baseDropIn.Parent.Location.X; pnlMasterContent.Controls.Remove(baseDropIn.Parent); DropIns.Remove(baseDropIn); foreach (var dropIn in DropIns) { if (dropIn.Parent.Location.X < dropInX) { dropIn.Parent.Location = new Point(dropIn.Parent.Location.X + 50, dropIn.Parent.Location.Y); } } Refresh(); }
/// <summary> /// Tilføjer et DropIn til vinduet, og placerer det foran alt andet /// </summary> public void ShowDropIn(BaseDropIn view) { var viewWidth = view.Width; //Hvis der allerede er et DropIn af typen man //forsøger at vise skal det ignores foreach (var dropIn in DropIns) { if (dropIn.GetDropInId() == view.GetDropInId()) { return; } } //Flyt de eksisterende lidt ud, så man kan se dem under den øverste foreach (var dropIn in DropIns) { dropIn.Parent.Location = new Point( dropIn.Parent.Location.X - 50, dropIn.Parent.Location.Y); } var dropInHolder = new Panel { BackColor = SmartColor.Light, Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Right, Size = new Size(viewWidth, pnlMasterContent.Height) }; pnlMasterContent.Controls.Add(dropInHolder); //Tilføjer dropin'et til listen DropIns.Add(view); //Tilføjet dropin'et til holderen dropInHolder.Controls.Add(view); //Får view'et til at fylde hele holderen view.Dock = DockStyle.Fill; //Flytter holderen så den sidder i højre side dropInHolder.Location = new Point( pnlMasterContent.Width - dropInHolder.Width, dropInHolder.Top); dropInHolder.BringToFront(); }