public void InitialzeToolbars()
        {
            BarManager barManager = mainForm.ToolBarManager as BarManager;

            if (barManager != null)
            {
                ((System.ComponentModel.ISupportInitialize)(barManager)).BeginInit();
                var       groups = winformToolbarManager.GetAllToolbarGroups();
                var       standaloneBarDockControl = mainForm.StandaloneBarDockControl as StandaloneBarDockControl;
                ImageList imageList = new ImageList();
                barManager.Images = imageList;
                foreach (var group in groups)
                {
                    var newBar = CreateBarByGroup(group, standaloneBarDockControl);
                    IList <WinformToolbar> toolbars = winformToolbarManager.GetToolbarsByGroups(group);
                    foreach (var toolbar in toolbars)
                    {
                        imageList.Images.Add(toolbar.PrefixedName, toolbar.Icon);

                        BarButtonItem buttonItem = new BarButtonItem();
                        buttonItem.Caption    = toolbar.Tip;
                        buttonItem.Name       = toolbar.Name;
                        buttonItem.ImageIndex = imageList.Images.IndexOfKey(toolbar.PrefixedName);
                        if (toolbar.DisableIcon != null)
                        {
                            imageList.Images.Add(toolbar.PrefixedName + toolbarDisableSuffixStr, toolbar.DisableIcon);
                            buttonItem.ImageIndexDisabled = imageList.Images.IndexOfKey(toolbar.PrefixedName + toolbarDisableSuffixStr);
                        }
                        toolbar.UIObject      = buttonItem;
                        buttonItem.Enabled    = toolbar.DefaultEnable;
                        buttonItem.ItemClick += (sender, e) => {
                            //toolbar.ToolbarEvent?.Invoke(toolbar);
                            if (toolbar.ToolbarAction != null)
                            {
                                var toolActiono = iocManager.Resolve(toolbar.ToolbarAction);
                                if (toolActiono is IToolbarAction)
                                {
                                    var toolAction = (IToolbarAction)toolActiono;
                                    toolAction.WinformToolbar = toolbar;
                                    toolAction.Excute();
                                }
                            }
                        };
                        barManager.Items.Add(buttonItem);
                        newBar.LinksPersistInfo.Add(new LinkPersistInfo(buttonItem));
                    }
                    barManager.Bars.Add(newBar);
                }
                ((System.ComponentModel.ISupportInitialize)(barManager)).EndInit();
            }
            else
            {
                throw new AbpException("No Bar Manager was found");
            }
        }
Exemple #2
0
        /// <summary>
        /// CAD文件打开时的Toolbar操作
        /// </summary>
        public void CADFileOpen()
        {
            var toolbarGroup = toolbarManager.GetToolbarGroupOrNull(CADToolbarNames.CADToolGroup);

            if (toolbarGroup != null)
            {
                winformToolbarViewManager.ClearToolbars();
                winformToolbarViewManager.SetToolbarGroupStatus(toolbarGroup, MenuStatus.Available);
                var bars = toolbarManager.GetToolbarsByGroups(toolbarGroup);
                winformToolbarViewManager.SetToolbarsStatus(bars, MenuStatus.Available);
            }
        }