private void OnProperyChanged()
        {
            Console.WriteLine("UpdateProperties");

            if (LayoutProperties != null)
            {
                LayoutProperties.UpdateProperties();
            }

            if (ActiveViewport != null)
            {
                ActiveViewport.UpdateViewport();
            }
        }
        private void dockPanel1_ActiveDocumentChanged(object sender, EventArgs e)
        {
            var dockContent = dockPanel1.ActiveDocument as DockContent;

            if (dockContent == null)
            {
                return;
            }

            LayoutViewer viewer = null;

            foreach (var control in dockContent.Controls)
            {
                if (control is LayoutViewer)
                {
                    viewer = control as LayoutViewer;
                }
            }

            if (viewer != null)
            {
                var file = viewer.LayoutFile;
                ActiveLayout = file;
                ReloadEditors(file);
                ActiveViewport = viewer;
                UpdateUndo();
                viewer.UpdateViewport();

                Console.WriteLine("changed " + ActiveLayout.FileName);
            }
        }
 public void UpdateViewport()
 {
     ActiveViewport?.UpdateViewport();
 }