public DesignControl()
        {
            InitializeComponent();

            _relateBizModules = new CoordinationBizModules();

            _provideActionDesc = new Dictionary <string, string>();
            _provideDataDesc   = new ModuleDataDescription();

            _designEvents = new Dictionary <string, EventActionReleation>();

            _rclickMenus = new ModuleMenus();

            //Load -= DesignControl_Load;
            //Load += DesignControl_Load;
            try
            {
                InitBaseInfo();
            }
            catch (Exception ex)
            {
                throw new Exception("[InitBaseInfo] 模块信息初始化错误", ex);
            }

            _OriginalName = _moduleName;

            HandleDestroyed += EventHandlerProcess;
        }
        private void InitRClickMenu(ModuleMenus rclickMenu)
        {
            try
            {
                if (this.ContextMenuStrip == null)
                {
                    return;
                }

                Font bFont = new Font(this.Font.FontFamily, (float)10.5, FontStyle.Bold);

                //添加用户工具按钮
                foreach (ModuleMenuInfo menuItem in rclickMenu.Menus)
                {
                    //创建快捷按钮
                    ToolStripItem rClickMenu = null;

                    if (menuItem.Name == "-")
                    {
                        rClickMenu = new ToolStripSeparator();
                    }
                    else
                    {
                        ToolStripMenuItem curMenu = new ToolStripMenuItem();

                        curMenu.Name   = menuItem.Name;
                        curMenu.Image  = Img24Resource.LoadImg(menuItem.Icon);
                        curMenu.Text   = menuItem.Name + ((string.IsNullOrEmpty(menuItem.Shortcutkey)) ? "" : "(&" + menuItem.Shortcutkey + ")");
                        curMenu.Click += DoRClickMenuEvent;

                        rClickMenu = curMenu;
                    }

                    rClickMenu.Tag = menuItem;

                    if (string.IsNullOrEmpty(menuItem.ParentName))
                    {
                        this.ContextMenuStrip.Items.Add(rClickMenu);
                    }
                    else
                    {
                        ToolStripItem[] tsiParent = this.ContextMenuStrip.Items.Find(menuItem.ParentName, true);

                        ToolStripMenuItem dropDownMenu = tsiParent[0] as ToolStripMenuItem;

                        if (dropDownMenu != null)
                        {
                            dropDownMenu.DropDownItems.Add(rClickMenu);
                        }
                    }

                    menuItem.LinkMenu = rClickMenu;
                }
            }
            catch (Exception ex)
            {
                MsgBox.ShowException(ex, this);
            }
        }
        public bool ShowDesign(ModuleMenus rclickMenus, IWin32Window owner)
        {
            _rMenus = rclickMenus;

            this.ShowDialog(owner);

            return(_isOk);
        }
        protected virtual void ReloadRClickMenu(string rclickMenuFmt)
        {
            ClearCustomRClickMenu();

            if (string.IsNullOrEmpty(rclickMenuFmt))
            {
                return;
            }

            _rclickMenus = JsonHelper.DeserializeObject <ModuleMenus>(rclickMenuFmt);

            if (_rclickMenus.Menus.Count <= 0)
            {
                return;
            }

            InitRClickMenu(_rclickMenus);

            SyncDesignEventsByRClickMenu();
        }