Пример #1
0
        static public void SyncDesignEventsByButtons(ToolsDesign toolDesign, Dictionary <string, EventActionReleation> designEvents)
        {
            foreach (ToolItemConfig tic in toolDesign.ToolsCfg)
            {
                if (designEvents.ContainsKey(tic.称) == false)
                {
                    designEvents.Add(tic.称, new EventActionReleation(tic.称, ActionType.atSysCustomEvent));
                }
            }

            List <string> keys = new List <string>(designEvents.Keys);

            for (int i = keys.Count - 1; i >= 0; i--)
            {
                //固定事件不允许删除
                if (designEvents[keys[i]].ActType == ActionType.atSysFixedEvent)
                {
                    continue;
                }

                if (toolDesign.ToolsCfg.FindIndex(T => T.称 == keys[i]) < 0)
                {
                    //未找到对应按钮
                    designEvents.Remove(keys[i]);
                }
            }
        }
Пример #2
0
        static public void ConfigButtons(ToolStrip toolStrip, ToolsDesign toolDesign, EventHandler itemClick)
        {
            toolStrip.ImageList = Img24Resource.Imgs;

            //添加用户工具按钮
            foreach (ToolItemConfig toolItem in toolDesign.ToolsCfg)
            {
                //创建快捷按钮
                ToolStripItem tsBut = null;

                switch (toolItem.钮类型)
                {
                case ToolType.ttLabel:
                    tsBut = new ToolStripLabel();
                    break;

                case ToolType.ttButton:
                    tsBut = new ToolStripButton();
                    break;

                case ToolType.ttDrowDownButton:
                    tsBut = new ToolStripDropDownButton();
                    break;

                case ToolType.ttSeparator:
                    tsBut = new ToolStripSeparator();
                    break;

                default:
                    break;
                }

                switch (toolItem.显示样式)
                {
                case ToolDisplayStyle.tdsText:
                    tsBut.DisplayStyle = ToolStripItemDisplayStyle.Text;
                    break;

                case ToolDisplayStyle.tdsImage:
                    tsBut.DisplayStyle = ToolStripItemDisplayStyle.Image;
                    break;

                case ToolDisplayStyle.tdsTextAndImage:
                    tsBut.DisplayStyle = ToolStripItemDisplayStyle.ImageAndText;
                    break;

                default:
                    break;
                }

                switch (toolItem.图标位置)
                {
                case ToolIconStyle.tisImageAboveText:
                    tsBut.TextImageRelation = TextImageRelation.ImageAboveText;
                    break;

                case ToolIconStyle.tisTextAboveImage:
                    tsBut.TextImageRelation = TextImageRelation.TextAboveImage;
                    break;

                case ToolIconStyle.tisImageBeforeText:
                    tsBut.TextImageRelation = TextImageRelation.ImageBeforeText;
                    break;

                default:
                    tsBut.TextImageRelation = TextImageRelation.TextBeforeImage;
                    break;
                }

                if (toolItem.右对齐)
                {
                    tsBut.Alignment = ToolStripItemAlignment.Right;
                }

                tsBut.Name = toolItem.称;
                tsBut.Text = toolItem.称;
                tsBut.Tag  = toolItem.标记;

                Img24Resource.LoadImg(toolItem.图标);
                tsBut.ImageKey = toolItem.图标;


                tsBut.ForeColor = toolDesign.ForceColor;
                tsBut.Click    += itemClick;

                if (string.IsNullOrEmpty(toolItem.父级名称))
                {
                    toolStrip.Items.Add(tsBut);
                }
                else
                {
                    ToolStripItem[] tsiParent = toolStrip.Items.Find(toolItem.父级名称, true);

                    ToolStripDropDownButton dropDownButton = tsiParent[0] as ToolStripDropDownButton;

                    if (dropDownButton != null)
                    {
                        dropDownButton.DropDownItems.Add(tsBut);
                    }
                }

                toolItem.LinkObj = tsBut;
            }
        }