示例#1
0
        /// <inheritdoc />
        public void Activate()
        {
            if (_isActivated)
            {
                return;
            }
            var dockManagers = App.CompositionContainer.GetExportedValues <IDockManager>().ToList();

            // Activate only if there are no other IDockManager implementations and
            // custom DockManager not yet set
            if (App.DockManager == null && dockManagers.Count == 1 && dockManagers[0].GetType() == GetType())
            {
                _isActivated = true;

                _dockManager = new SpatialDockManager
                {
                    Dock = DockStyle.Fill
                };
                _dockManager.AddDefaultTabControls();
                _dockManager.ActivePanelChanged += (sender, args) => RaiseDockableEvent(ActivePanelChanged, args);
                _dockManager.PanelClosed        += (sender, args) => RaiseDockableEvent(PanelClosed, args);
                _dockManager.PanelAdded         += (sender, args) => RaiseDockableEvent(PanelAdded, args);
                _dockManager.PanelRemoved       += (sender, args) => RaiseDockableEvent(PanelRemoved, args);
                _dockManager.PanelHidden        += (sender, args) => RaiseDockableEvent(PanelHidden, args);

                Shell.Controls.Add(_dockManager);
            }
        }
示例#2
0
        private void ShowMap()
        {
            _map = new Map {
                Text = "Map", Name = "map1", Legend = App.Legend
            };
            App.Map = _map;
            DotSpatial.Controls.SpatialDockManager _dock = new SpatialDockManager();
            _dock.Orientation = Orientation.Horizontal;
            _dock.Panel1.Controls.Add(_map);
            _map.Dock = DockStyle.Fill;

            //初始化日志输出
            GroupBox groupBox1 = new GroupBox();

            groupBox1.Text = "输出";
            System.Windows.Forms.TextBox tbMsg = new TextBox();
            groupBox1.Controls.Add(tbMsg);
            tbMsg.Dock       = DockStyle.Fill;
            tbMsg.Multiline  = true;
            tbMsg.ScrollBars = ScrollBars.Vertical;
            _dock.Panel2.Controls.Add(groupBox1);
            groupBox1.Dock = DockStyle.Fill;
            //设置上容器高度
            _dock.SplitterDistance = 370;
            this.MsgControl        = tbMsg;
            App.DockManager.Add(new DockablePanel("kMap", Resource.Map, _dock, DockStyle.Fill));
        }
示例#3
0
        public void Activate()
        {
            if (_isActivated) return;
            var dockManagers = App.CompositionContainer.GetExportedValues<IDockManager>().ToList();

            // Activate only if there are no other IDockManager implementations and
            // custom DockManager not yet set
            if (App.DockManager == null &&
                dockManagers.Count == 1 && dockManagers[0].GetType() == GetType())
            {
                _isActivated = true;

                _dockManager = new SpatialDockManager();
                _dockManager.ActivePanelChanged += (sender, args) => RaiseDockableEvent(ActivePanelChanged, args);
                _dockManager.PanelClosed += (sender, args) => RaiseDockableEvent(PanelClosed, args);
                _dockManager.PanelAdded += (sender, args) => RaiseDockableEvent(PanelAdded, args);
                _dockManager.PanelRemoved += (sender, args) => RaiseDockableEvent(PanelRemoved, args);
                _dockManager.PanelHidden += (sender, args) => RaiseDockableEvent(PanelHidden, args);
                
                Shell.ContentView.AddSubview((NSSplitView)_dockManager);
            }
        }