private IStudioControl OpenControl(string id, Type ctrlType, object tag, Func <IStudioControl> getControl)
        {
            if (ctrlType == null)
            {
                throw new ArgumentNullException(nameof(ctrlType));
            }

            if (getControl == null)
            {
                throw new ArgumentNullException(nameof(getControl));
            }

            id = id.ToLowerInvariant();

            var wnd = _contents.SafeAdd(Tuple.Create(id, ctrlType), key =>
            {
                var docWnd = new ContentDocumentWindow
                {
                    Tag      = tag,
                    Control  = getControl(),
                    Name     = "Pane" + id.Replace("-", "") + ctrlType.Name,
                    CanClose = !(tag is StrategyInfo)
                };
                DockSite.DocumentWindows.Add(docWnd);

                return(docWnd);
            });

            ((DockingWindow)wnd).Activate();

            return(wnd.Control);
        }
		private IStudioControl OpenControl(string id, Type ctrlType, object tag, Func<IStudioControl> getControl)
		{
			if (ctrlType == null)
				throw new ArgumentNullException(nameof(ctrlType));

			if (getControl == null)
				throw new ArgumentNullException(nameof(getControl));

			id = id.ToLowerInvariant();

			var wnd = _contents.SafeAdd(Tuple.Create(id, ctrlType), key =>
			{
				var docWnd = new ContentDocumentWindow
				{
					Tag = tag,
					Control = getControl(),
					Name = "Pane" + id.Replace("-", "") + ctrlType.Name,
					CanClose = !(tag is StrategyInfo)
				};
				DockSite.DocumentWindows.Add(docWnd);

				return docWnd;
			});

			((DockingWindow)wnd).Activate();

			return wnd.Control;
		}